You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Mete Atamel (JIRA)" <ji...@apache.org> on 2012/12/20 15:05:13 UTC

[jira] [Commented] (OAK-535) MergeCommand reads complete tree into memory

    [ https://issues.apache.org/jira/browse/OAK-535?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13537029#comment-13537029 ] 

Mete Atamel commented on OAK-535:
---------------------------------

To provide more context why this is the case, when a branch is merged into the trunk, MergeCommand does a 3-way merge (borrowed from MicroKernelImpl) among branch root, current trunk head, and the common ancestor of trunk and branch. So it needs to fetch nodes at those mentioned paths in order to do comparisons but the problem is it's not obvious what the path and depth of that fetch should be. So as a start, I went with "/" as path and unlimited depth to fetch everything but that obviously is not going to work for lots of nodes. After some testing, it looked to me that we should be able to limit the depth to the max depth of the branch and that works for the branch/merge tests but fails in other scenarios like quickstart. We might also be able to limit the path of the getNodes calls (instead of using "/") but haven't had the chance to investigate that yet.
                
> MergeCommand reads complete tree into memory
> --------------------------------------------
>
>                 Key: OAK-535
>                 URL: https://issues.apache.org/jira/browse/OAK-535
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: mongomk
>    Affects Versions: 0.5
>            Reporter: Marcel Reutegger
>
> Merging commits to a branch back to head in MongoMK calls MergeCommand, which reads the complete tree into memory. The more content is in the repository, the longer it takes to store even a simple update as a property change.

--
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