[ https://issues.apache.org/jira/browse/OAK-5863?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alex Parvulescu resolved OAK-5863. ---------------------------------- Resolution: Fixed Assignee: Alex Parvulescu Fix Version/s: 1.7.0 impact seems very low, the condition to reproduce here is to have 10k changes on that specific nodebuilder which is quite a lot. fixed with http://svn.apache.org/viewvc?rev=1784953&view=rev > SegmentNodeBuilder getNodeState can trigger eager flush of child node builder > ----------------------------------------------------------------------------- > > Key: OAK-5863 > URL: https://issues.apache.org/jira/browse/OAK-5863 > Project: Jackrabbit Oak > Issue Type: Bug > Components: segment-tar > Reporter: Alex Parvulescu > Assignee: Alex Parvulescu > Fix For: 1.7.0, 1.8 > > > It seems that calling {{getNodeState}} on a {{SegmentNodeBuilder}} that is > not root can reset the {{updateCount}} even if the builder is not root, and > will start eagerly flushing the state to disk once the update limit is > reached. [0] > The fix is relatively simple, don't reset the {{updateCount}} to {{0}} if the > builder is not a root. I'm now trying to determine the impact on write > throughput and on the size of the repository, as this is not an easy > situation to reproduce. It needs to have a very large transaction happening, > and a call to {{getNodeState}} down the tree. > [0] > https://github.com/apache/jackrabbit-oak/blob/trunk/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentNodeBuilder.java#L114 -- This message was sent by Atlassian JIRA (v6.3.15#6346)