[ https://issues.apache.org/jira/browse/OAK-4444?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michael Dürig resolved OAK-4444. -------------------------------- Resolution: Fixed Fixed at http://svn.apache.org/viewvc?rev=1747391&view=rev > Reduce number of calls to NodeBuilder.getNodeState from MergingNodeStateDiff > ---------------------------------------------------------------------------- > > Key: OAK-4444 > URL: https://issues.apache.org/jira/browse/OAK-4444 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: core > Reporter: Michael Dürig > Assignee: Michael Dürig > Labels: perfomance > Fix For: 1.5.4 > > > The result of the static {{MergingNodeStateDiff.merge}} method is only used > in the base case of a recursive diff. In all other cases while traversing the > child diffs that result is simply discarded. As calculating the result > involves an extra call to {{NodeBuilder.getNodeState}} it inflicts a > performance penalty in the case of segment-tar: in that case this call causes > the changes in the builder to be written ahead into the store. I figure it is > simple enough to specialise the merge method in a way so that call is only > done when its result is actually used. -- This message was sent by Atlassian JIRA (v6.3.4#6332)