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);
}