You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by fr...@apache.org on 2018/04/04 14:49:48 UTC
svn commit: r1828353 - in /jackrabbit/oak/trunk/oak-core/src:
main/java/org/apache/jackrabbit/oak/plugins/commit/MergingNodeStateDiff.java
test/java/org/apache/jackrabbit/oak/plugins/commit/ThreeWayConflictHandlerTest.java
Author: frm
Date: Wed Apr 4 14:49:47 2018
New Revision: 1828353
URL: http://svn.apache.org/viewvc?rev=1828353&view=rev
Log:
OAK-7388 - Don't inadvertently re-create previously deleted nodes
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/MergingNodeStateDiff.java
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/commit/ThreeWayConflictHandlerTest.java
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/MergingNodeStateDiff.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/MergingNodeStateDiff.java?rev=1828353&r1=1828352&r2=1828353&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/MergingNodeStateDiff.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/commit/MergingNodeStateDiff.java Wed Apr 4 14:49:47 2018
@@ -35,13 +35,12 @@ import java.util.Set;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Sets;
-
import org.apache.jackrabbit.oak.api.PropertyState;
import org.apache.jackrabbit.oak.json.JsopDiff;
import org.apache.jackrabbit.oak.plugins.memory.PropertyBuilder;
import org.apache.jackrabbit.oak.plugins.tree.TreeConstants;
-import org.apache.jackrabbit.oak.spi.commit.ThreeWayConflictHandler.Resolution;
import org.apache.jackrabbit.oak.spi.commit.ThreeWayConflictHandler;
+import org.apache.jackrabbit.oak.spi.commit.ThreeWayConflictHandler.Resolution;
import org.apache.jackrabbit.oak.spi.state.ChildNodeEntry;
import org.apache.jackrabbit.oak.spi.state.ConflictAnnotatingRebaseDiff;
import org.apache.jackrabbit.oak.spi.state.ConflictType;
@@ -95,7 +94,9 @@ public final class MergingNodeStateDiff
@Override
public boolean childNodeChanged(String name, NodeState before, NodeState after) {
- merge(before, after, target.child(name), conflictHandler);
+ if (target.hasChildNode(name)) {
+ merge(before, after, target.getChildNode(name), conflictHandler);
+ }
return true;
}
Modified: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/commit/ThreeWayConflictHandlerTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/commit/ThreeWayConflictHandlerTest.java?rev=1828353&r1=1828352&r2=1828353&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/commit/ThreeWayConflictHandlerTest.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/commit/ThreeWayConflictHandlerTest.java Wed Apr 4 14:49:47 2018
@@ -38,7 +38,6 @@ import org.apache.jackrabbit.oak.spi.sta
import org.apache.jackrabbit.oak.spi.state.NodeBuilder;
import org.apache.jackrabbit.oak.spi.state.NodeState;
import org.junit.Assert;
-import org.junit.Ignore;
import org.junit.Test;
public class ThreeWayConflictHandlerTest {
@@ -289,7 +288,6 @@ public class ThreeWayConflictHandlerTest
}
@Test
- @Ignore("OAK-7388")
public void deletedNodesShouldNotBeRecreated() throws Exception {
NodeState root = EmptyNodeState.EMPTY_NODE;