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 2017/06/19 14:23:23 UTC

svn commit: r1799213 - /jackrabbit/oak/trunk/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/CompositeNodeStore.java

Author: tomekr
Date: Mon Jun 19 14:23:23 2017
New Revision: 1799213

URL: http://svn.apache.org/viewvc?rev=1799213&view=rev
Log:
OAK-6360: Failed to retrieve previously indexed checkpoint in composite node store

Don't use the resolve-by-name mechanism for releasing checkpoints
from the partial stores.

Modified:
    jackrabbit/oak/trunk/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/CompositeNodeStore.java

Modified: jackrabbit/oak/trunk/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/CompositeNodeStore.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/CompositeNodeStore.java?rev=1799213&r1=1799212&r2=1799213&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/CompositeNodeStore.java (original)
+++ jackrabbit/oak/trunk/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/CompositeNodeStore.java Mon Jun 19 14:23:23 2017
@@ -291,7 +291,7 @@ public class CompositeNodeStore implemen
         nodeStates.put(ctx.getGlobalStore(), ctx.getGlobalStore().getNodeStore().retrieve(checkpoint));
         for (MountedNodeStore nodeStore : ctx.getNonDefaultStores()) {
             NodeState nodeState = null;
-            String partialCheckpoint = getPartialCheckpointName(nodeStore, checkpoint, props);
+            String partialCheckpoint = getPartialCheckpointName(nodeStore, checkpoint, props, true);
             if (partialCheckpoint == null && nodeStore.getMount().isReadOnly()) {
                 nodeState = nodeStore.getNodeStore().getRoot();
             } else if (partialCheckpoint != null) {
@@ -322,7 +322,7 @@ public class CompositeNodeStore implemen
                 continue;
             }
             boolean released = false;
-            String partialCheckpoint = getPartialCheckpointName(nodeStore, checkpoint, props);
+            String partialCheckpoint = getPartialCheckpointName(nodeStore, checkpoint, props, false);
             if (partialCheckpoint != null) {
                 released = nodeStore.getNodeStore().release(partialCheckpoint);
             }
@@ -331,7 +331,7 @@ public class CompositeNodeStore implemen
         return result;
     }
 
-    private String getPartialCheckpointName(MountedNodeStore nodeStore, String globalCheckpoint, Map<String, String> globalCheckpointProperties) {
+    private String getPartialCheckpointName(MountedNodeStore nodeStore, String globalCheckpoint, Map<String, String> globalCheckpointProperties, boolean resolveByName) {
         Set<String> validCheckpointNames = ImmutableSet.copyOf(nodeStore.getNodeStore().checkpoints());
         String result = globalCheckpointProperties.get(CHECKPOINT_METADATA_MOUNT + nodeStore.getMount().getName());
         if (result != null && validCheckpointNames.contains(result)) {