Author: thomasm
Date: Wed Mar 19 10:02:51 2014
New Revision: 1579182

URL: http://svn.apache.org/r1579182
Log:
OAK-333 1000 byte path limit in MongoMK

Modified:
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/CacheInvalidator.java

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/CacheInvalidator.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/CacheInvalidator.java?rev=1579182&r1=1579181&r2=1579182&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/CacheInvalidator.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/CacheInvalidator.java
 Wed Mar 19 10:02:51 2014
@@ -41,6 +41,7 @@ import org.apache.jackrabbit.oak.commons
 import org.apache.jackrabbit.oak.plugins.document.CachedNodeDocument;
 import org.apache.jackrabbit.oak.plugins.document.Collection;
 import org.apache.jackrabbit.oak.plugins.document.Document;
+import org.apache.jackrabbit.oak.plugins.document.NodeDocument;
 import org.apache.jackrabbit.oak.plugins.document.util.Utils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -276,8 +277,13 @@ abstract class CacheInvalidator {
                 //check them
                 //TODO Need to determine way to determine if the
                 //key is referring to a split document
-                String path = Utils.getPathFromId(e.getKey().toString());
                 result.cacheSize++;
+                CachedNodeDocument doc = e.getValue();
+                if (doc == NodeDocument.NULL) {
+                    // we only need to process documents that exist
+                    continue;
+                }
+                String path = doc.getPath();
                 for (String name : PathUtils.elements(path)) {
                     current = current.child(name);
                 }


Reply via email to