[
https://issues.apache.org/jira/browse/OAK-659?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13686556#comment-13686556
]
Jukka Zitting commented on OAK-659:
-----------------------------------
bq. AFAIC NodeBuilder.reset could be used to implement Root.reset. For
Root.rebase we could add NodeBuilder.rebase, which would be similar to
NodeBuilder.reset.
Yes, I think this is probably the best approach here. It does mean quite a bit
of functionality in NodeBuilder, but with the recent refactoring of
MemoryNodeBuilder we should be able to manage it without too much extra
complexity.
bq. asymmetries
I'd rather name the method {{NodeStore.merge(NodeBuilder, CommitHook)}}. That
way it's clearer that the operation is not a direct reflection of {{getRoot()}}
but rather a more complex operation.
> Move purge logic for transient changes below the NodeBuilder interface
> ----------------------------------------------------------------------
>
> Key: OAK-659
> URL: https://issues.apache.org/jira/browse/OAK-659
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: core
> Reporter: Michael Dürig
> Attachments: OAK-659.patch
>
>
> Currently transient changes are purged down to a persisted branch once a
> certain size threshold is hit. This logic currently resides in {{RootImpl}}.
> However this approach doesn't catch the case where a lot of content is added
> by a commit hook (e.g. index updates) since commit hooks operate on the
> {{NodeBuilder}} level which is below {{Root}}.
> The aim of this issue is to pursue ways to push the purge logic further down
> below the {{NodeBuilder}} interface.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira