[
https://issues.apache.org/jira/browse/OAK-1356?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13882626#comment-13882626
]
Thomas Mueller commented on OAK-1356:
-------------------------------------
About exposing the implementation detail to the application: I wouldn't do
that. Specially, within the application, I wouldn't do any kind of "if storage1
doThis else doThat", because one of the two branches will be well tested, and
the other one will not be tested. The risk is, the application will work with
storage1 but not with storage2.
> I'd ideally fix this in the MongoMK
As far as I understand, the problem is that the oak-core code (editors,
observers) go through the whole transaction *multiple* times. That means,
oak-core components scan multiple times over data that potentially doesn't fit
in memory, in case of large transactions. So if the transaction is large, the
data *has* to hit the disk. Because of that, I'm afraid this isn't something
that can be completely fixed in the MongoMK (or any other storage subsystem).
The _real_ fix, in my view, would be to change oak-core (the editor / observer
mechanism) so that it goes through the whole transaction only *once* and not
multiple times.
> Expose the preferred transient space size as repository descriptor
> -------------------------------------------------------------------
>
> Key: OAK-1356
> URL: https://issues.apache.org/jira/browse/OAK-1356
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Reporter: Tobias Bocanegra
>
> The problem is that the different stores have different transient space
> characteristics. for example the MongoMK is very slow when handling large
> saves.
> suggest to expose a repository descriptor that can be used to estimate the
> preferred transient space, for example when importing content.
> so either a boolean like:
> {{option.infinite.transientspace}}
> or a number like:
> {{option.transientspace.preferred.size}}
> the later would denote the average number of modified node states that should
> be put in the transient space before the persistence starts to degrade.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)