Index: oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeState.java =================================================================== --- oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeState.java (revision 1737322) +++ oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeState.java (working copy) @@ -555,11 +555,9 @@ } } } else if (beforeChildName != Template.MANY_CHILD_NODES) { - boolean beforeChildStillExists = false; for (ChildNodeEntry entry : afterTemplate.getChildNodeEntries(afterId)) { String childName = entry.getName(); - beforeChildStillExists |= childName.equals(beforeChildName); NodeState afterChild = entry.getNodeState(); if (beforeChildName.equals(childName)) { NodeState beforeChild = @@ -579,7 +577,9 @@ return false; } } - if (!beforeChildStillExists) { + NodeState afterBeforeNode = + afterTemplate.getChildNode(beforeChildName, afterId); + if (!afterBeforeNode.exists()) { NodeState beforeChild = beforeTemplate.getChildNode(beforeChildName, beforeId); if (!diff.childNodeDeleted(beforeChildName, beforeChild)) {