diff --git a/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java b/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java index 2e629c0..fde956a 100755 --- a/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java +++ b/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java @@ -52,6 +52,7 @@ import static org.apache.jackrabbit.oak.upgrade.RepositoryUpgrade.DEFAULT_EXCLUD import static org.apache.jackrabbit.oak.upgrade.RepositoryUpgrade.DEFAULT_INCLUDE_PATHS; import static org.apache.jackrabbit.oak.upgrade.RepositoryUpgrade.DEFAULT_MERGE_PATHS; import static org.apache.jackrabbit.oak.upgrade.RepositoryUpgrade.calculateEffectiveIncludePaths; +import static org.apache.jackrabbit.oak.upgrade.nodestate.NodeStateCopier.copyProperties; import static org.apache.jackrabbit.oak.upgrade.version.VersionCopier.copyVersionStorage; public class RepositorySidegrade { @@ -272,5 +273,9 @@ public class RepositorySidegrade { .exclude(excludes) .merge(merges) .copy(sourceRoot, targetRoot); + + if (includePaths.contains("/")) { + copyProperties(sourceRoot, targetRoot); + } } } \ No newline at end of file diff --git a/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositoryUpgrade.java b/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositoryUpgrade.java index 1b1f46e..b2e24b7 100644 --- a/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositoryUpgrade.java +++ b/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositoryUpgrade.java @@ -31,6 +31,7 @@ import static org.apache.jackrabbit.oak.plugins.nodetype.NodeTypeConstants.NODE_ import static org.apache.jackrabbit.oak.spi.security.privilege.PrivilegeConstants.JCR_ALL; import static org.apache.jackrabbit.oak.upgrade.nodestate.FilteringNodeState.ALL; import static org.apache.jackrabbit.oak.upgrade.nodestate.FilteringNodeState.NONE; +import static org.apache.jackrabbit.oak.upgrade.nodestate.NodeStateCopier.copyProperties; import java.io.File; import java.io.IOException; @@ -869,6 +870,10 @@ public class RepositoryUpgrade { .merge(merges) .copy(sourceRoot, targetRoot); + if (includePaths.contains("/")) { + copyProperties(sourceRoot, targetRoot); + } + return workspaceName; } diff --git a/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/cli/AbstractOak2OakTest.java b/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/cli/AbstractOak2OakTest.java index da862ad..6e5040f 100644 --- a/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/cli/AbstractOak2OakTest.java +++ b/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/cli/AbstractOak2OakTest.java @@ -16,7 +16,6 @@ */ package org.apache.jackrabbit.oak.upgrade.cli; -import static junit.framework.Assert.assertEquals; import static org.junit.Assert.assertEquals; import java.io.File; @@ -116,6 +115,12 @@ public abstract class AbstractOak2OakTest { } static void verifyContent(Session session) throws RepositoryException { + Node root = session.getRootNode(); + assertEquals("rep:root", root.getPrimaryNodeType().getName()); + assertEquals(1, root.getMixinNodeTypes().length); + assertEquals("rep:AccessControllable", root.getMixinNodeTypes()[0].getName()); + assertEquals("sling:redirect", root.getProperty("sling:resourceType").getString()); + Node allow = session.getNode("/apps"); assertEquals("sling:Folder", allow.getProperty("jcr:primaryType").getString()); assertEquals("admin", allow.getProperty("jcr:createdBy").getString());