Author: stefanegli
Date: Tue Jul 21 08:40:19 2015
New Revision: 1692065

URL: http://svn.apache.org/r1692065
Log:
OAK-3085 : adding _modified timestamp property to journal, for later use by 
OAK-3001, incl adding an index for this

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

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/JournalEntry.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/JournalEntry.java?rev=1692065&r1=1692064&r2=1692065&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/JournalEntry.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/JournalEntry.java
 Tue Jul 21 08:40:19 2015
@@ -65,6 +65,8 @@ public final class JournalEntry extends
 
     private static final String BRANCH_COMMITS = "_bc";
 
+    public static final String MODIFIED = "_modified";
+
     private static final int READ_CHUNK_SIZE = 100;
 
     /**
@@ -262,6 +264,9 @@ public final class JournalEntry extends
         UpdateOp op = new UpdateOp(id, true);
         op.set(ID, id);
         op.set(CHANGES, getChanges().serialize());
+        // OAK-3085 : introduce a timestamp property
+        // for later being used by OAK-3001
+        op.set(MODIFIED, revision.getTimestamp());
         String bc = (String) get(BRANCH_COMMITS);
         if (bc != null) {
             op.set(BRANCH_COMMITS, bc);

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoDocumentStore.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoDocumentStore.java?rev=1692065&r1=1692064&r2=1692065&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoDocumentStore.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/mongo/MongoDocumentStore.java
 Tue Jul 21 08:40:19 2015
@@ -56,6 +56,7 @@ import org.apache.jackrabbit.oak.plugins
 import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
 import org.apache.jackrabbit.oak.plugins.document.DocumentStore;
 import org.apache.jackrabbit.oak.plugins.document.DocumentStoreException;
+import org.apache.jackrabbit.oak.plugins.document.JournalEntry;
 import org.apache.jackrabbit.oak.plugins.document.NodeDocument;
 import org.apache.jackrabbit.oak.plugins.document.Revision;
 import org.apache.jackrabbit.oak.plugins.document.StableRevisionComparator;
@@ -237,6 +238,11 @@ public class MongoDocumentStore implemen
         options.put("sparse", Boolean.TRUE);
         this.nodes.ensureIndex(index, options);
 
+        index = new BasicDBObject();
+        index.put(JournalEntry.MODIFIED, 1);
+        options = new BasicDBObject();
+        options.put("unique", Boolean.FALSE);
+        this.journal.ensureIndex(index, options);
 
         // TODO expire entries if the parent was changed
         if (builder.useOffHeapCache()) {
@@ -1477,4 +1483,4 @@ public class MongoDocumentStore implemen
             parentLock.unlock();
         }
     }
-}
\ No newline at end of file
+}


Reply via email to