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 to...@apache.org on 2016/08/29 17:29:54 UTC

svn commit: r1758264 - /jackrabbit/oak/branches/1.4/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java

Author: tomekr
Date: Mon Aug 29 17:29:54 2016
New Revision: 1758264

URL: http://svn.apache.org/viewvc?rev=1758264&view=rev
Log:
OAK-4684: RepositorySidegrade should also run commit hooks as they are run in upgrade

Updated the patch - now the commit hooks run only if there's a custom
include/exclude/merge path provided.

Modified:
    jackrabbit/oak/branches/1.4/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java

Modified: jackrabbit/oak/branches/1.4/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.4/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java?rev=1758264&r1=1758263&r2=1758264&view=diff
==============================================================================
--- jackrabbit/oak/branches/1.4/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java (original)
+++ jackrabbit/oak/branches/1.4/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/RepositorySidegrade.java Mon Aug 29 17:29:54 2016
@@ -281,15 +281,21 @@ public class RepositorySidegrade {
 
         markIndexesToBeRebuilt(targetRoot);
 
-        // type validation, reference and indexing hooks
-        hooks.add(new EditorHook(new CompositeEditorProvider(
-                createTypeEditorProvider(),
-                createIndexEditorProvider()
-        )));
+        if (!isCompleteMigration()) {
+            // type validation, reference and indexing hooks
+            hooks.add(new EditorHook(new CompositeEditorProvider(
+                    createTypeEditorProvider(),
+                    createIndexEditorProvider()
+            )));
+        }
 
         target.merge(targetRoot, new LoggingCompositeHook(hooks, null, false), CommitInfo.EMPTY);
     }
 
+    private boolean isCompleteMigration() {
+        return includePaths.equals(DEFAULT_INCLUDE_PATHS) && excludePaths.equals(DEFAULT_EXCLUDE_PATHS) && mergePaths.equals(DEFAULT_MERGE_PATHS);
+    }
+
     private void copyWorkspace(NodeState sourceRoot, NodeBuilder targetRoot) {
         final Set<String> includes = calculateEffectiveIncludePaths(includePaths, sourceRoot);
         final Set<String> excludes = union(copyOf(this.excludePaths), of("/jcr:system/jcr:versionStorage"));