Author: tomekr Date: Thu Aug 9 08:06:05 2018 New Revision: 1837696 URL: http://svn.apache.org/viewvc?rev=1837696&view=rev Log: OAK-7687: :async node is being removed during the partial migration
Modified: jackrabbit/oak/branches/1.8/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java jackrabbit/oak/branches/1.8/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/CopyCheckpointsTest.java jackrabbit/oak/branches/1.8/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/cli/AbstractOak2OakTest.java Modified: jackrabbit/oak/branches/1.8/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.8/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java?rev=1837696&r1=1837695&r2=1837696&view=diff ============================================================================== --- jackrabbit/oak/branches/1.8/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java (original) +++ jackrabbit/oak/branches/1.8/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java Thu Aug 9 08:06:05 2018 @@ -27,6 +27,7 @@ import java.util.Set; import javax.annotation.Nonnull; import javax.jcr.RepositoryException; +import com.google.common.collect.ImmutableSet; import com.google.common.collect.Lists; import org.apache.commons.lang.StringUtils; import org.apache.jackrabbit.JcrConstants; @@ -286,12 +287,6 @@ public class RepositorySidegrade { } } - private void removeCheckpointReferences(NodeBuilder builder) throws CommitFailedException { - // removing references to the checkpoints, - // which don't exist in the new repository - builder.setChildNode(":async"); - } - private void copyState() throws CommitFailedException, RepositoryException, IOException { boolean migrateCheckpoints = true; if (!isCompleteMigration() && !forceCheckpoints) { @@ -415,7 +410,6 @@ public class RepositorySidegrade { NodeState sourceRoot = wrapNodeState(source.getRoot(), true, false); NodeBuilder targetRoot = target.getRoot().builder(); copyWorkspace(sourceRoot, targetRoot); - removeCheckpointReferences(targetRoot); if (!versionCopyConfiguration.isCopyAll()) { NodeBuilder versionStorage = VersionHistoryUtil.getVersionStorage(targetRoot); if (!versionStorage.exists()) { // it's possible that this is a new repository and the version storage @@ -453,17 +447,17 @@ public class RepositorySidegrade { private void copyWorkspace(NodeState sourceRoot, NodeBuilder targetRoot) { final Set<String> includes = calculateEffectiveIncludePaths(includePaths, sourceRoot); - final Set<String> excludes; - if (versionCopyConfiguration.isCopyAll()) { - excludes = copyOf(this.excludePaths); - } else { - excludes = union(copyOf(this.excludePaths), of("/jcr:system/jcr:versionStorage")); + ImmutableSet.Builder<String> excludes = new ImmutableSet.Builder<>(); + excludes.addAll(excludePaths); + if (!versionCopyConfiguration.isCopyAll()) { + excludes.add("/jcr:system/jcr:versionStorage"); } - final Set<String> merges = union(copyOf(this.mergePaths), of("/jcr:system")); + excludes.add("/:async"); + final Set<String> merges = union(copyOf(this.mergePaths), of("/jcr:system")); NodeStateCopier.builder() .include(includes) - .exclude(excludes) + .exclude(excludes.build()) .merge(merges) .copy(sourceRoot, targetRoot); Modified: jackrabbit/oak/branches/1.8/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/CopyCheckpointsTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.8/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/CopyCheckpointsTest.java?rev=1837696&r1=1837695&r2=1837696&view=diff ============================================================================== --- jackrabbit/oak/branches/1.8/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/CopyCheckpointsTest.java (original) +++ jackrabbit/oak/branches/1.8/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/CopyCheckpointsTest.java Thu Aug 9 08:06:05 2018 @@ -161,7 +161,6 @@ public class CopyCheckpointsTest extends break; case CHECKPOINTS_MISSING: - verifyEmptyAsync(); break; } } Modified: jackrabbit/oak/branches/1.8/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/cli/AbstractOak2OakTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.8/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/cli/AbstractOak2OakTest.java?rev=1837696&r1=1837695&r2=1837696&view=diff ============================================================================== --- jackrabbit/oak/branches/1.8/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/cli/AbstractOak2OakTest.java (original) +++ jackrabbit/oak/branches/1.8/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/cli/AbstractOak2OakTest.java Thu Aug 9 08:06:05 2018 @@ -17,7 +17,6 @@ package org.apache.jackrabbit.oak.upgrade.cli; import static java.util.Collections.singletonMap; -import static junit.framework.Assert.assertFalse; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; @@ -166,8 +165,6 @@ public abstract class AbstractOak2OakTes verifyBlob(session); if (supportsCheckpointMigration()) { verifyCheckpoint(); - } else { - verifyEmptyAsync(); } } @@ -258,12 +255,6 @@ public abstract class AbstractOak2OakTes } } - // OAK-2869 - protected void verifyEmptyAsync() { - NodeState state = destination.getRoot().getChildNode(":async"); - assertFalse(state.hasProperty("test")); - } - protected boolean supportsCheckpointMigration() { return false; }