Author: mduerig
Date: Mon Mar 17 10:42:59 2014
New Revision: 1578294

URL: http://svn.apache.org/r1578294
Log:
OAK-1549: AbstractRebaseDiff incorrectly handles conflict in added nodes
Only report a conflict if the added node on the branch is different from the 
added node on the trunk

Modified:
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/state/AbstractRebaseDiff.java
    
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/state/AbstractRebaseDiffTest.java

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/state/AbstractRebaseDiff.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/state/AbstractRebaseDiff.java?rev=1578294&r1=1578293&r2=1578294&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/state/AbstractRebaseDiff.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/spi/state/AbstractRebaseDiff.java
 Mon Mar 17 10:42:59 2014
@@ -205,7 +205,9 @@ public abstract class AbstractRebaseDiff
     public boolean childNodeAdded(String name, NodeState after) {
         if (builder.hasChildNode(name)) {
             NodeState other = builder.child(name).getNodeState();
-            addExistingNode(builder, name, other, after);
+            if (!other.equals(after)) {
+                addExistingNode(builder, name, other, after);
+            }
         } else {
             builder.setChildNode(name, after);
         }

Modified: 
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/state/AbstractRebaseDiffTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/state/AbstractRebaseDiffTest.java?rev=1578294&r1=1578293&r2=1578294&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/state/AbstractRebaseDiffTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/spi/state/AbstractRebaseDiffTest.java
 Mon Mar 17 10:42:59 2014
@@ -26,7 +26,6 @@ import static org.junit.Assert.assertTru
 import org.apache.jackrabbit.oak.api.PropertyState;
 import org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState;
 import org.junit.Assert;
-import org.junit.Ignore;
 import org.junit.Test;
 
 public class AbstractRebaseDiffTest {
@@ -153,7 +152,6 @@ public class AbstractRebaseDiffTest {
     }
 
     @Test
-    @Ignore("OAK-1549")
     public void addExistingNode() {
         NodeBuilder headBuilder = base.builder();
         headBuilder.setChildNode("n");


Reply via email to