Michael Dürig created OAK-4444:
----------------------------------
Summary: 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
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)