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 ch...@apache.org on 2017/12/11 05:44:33 UTC

svn commit: r1817741 - in /jackrabbit/oak/trunk: oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/progress/ oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/ oak-run/src/main/java/org/apache/jackrabbit/oak/index/inde...

Author: chetanm
Date: Mon Dec 11 05:44:33 2017
New Revision: 1817741

URL: http://svn.apache.org/viewvc?rev=1817741&view=rev
Log:
OAK-6353 - Use Document order traversal for reindexing performed on DocumentNodeStore setups

Improve the log messages

Modified:
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/progress/IndexingProgressReporter.java
    jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/DocumentStoreIndexer.java
    jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/FlatFileNodeStoreBuilder.java

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/progress/IndexingProgressReporter.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/progress/IndexingProgressReporter.java?rev=1817741&r1=1817740&r2=1817741&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/progress/IndexingProgressReporter.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/progress/IndexingProgressReporter.java Mon Dec 11 05:44:33 2017
@@ -84,6 +84,10 @@ public class IndexingProgressReporter im
         messagePrefix = INDEX_MSG;
     }
 
+    public void setMessagePrefix(String messagePrefix) {
+        this.messagePrefix = messagePrefix;
+    }
+
     public void traversedNode(PathSource pathSource) throws CommitFailedException {
         if (++traversalCount % 10000 == 0) {
             double rate = traversalRateEstimator.getNodesTraversedPerSecond();

Modified: jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/DocumentStoreIndexer.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/DocumentStoreIndexer.java?rev=1817741&r1=1817740&r2=1817741&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/DocumentStoreIndexer.java (original)
+++ jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/DocumentStoreIndexer.java Mon Dec 11 05:44:33 2017
@@ -91,8 +91,6 @@ public class DocumentStoreIndexer implem
         DocumentNodeState rootDocumentState = (DocumentNodeState) checkpointedState;
         DocumentNodeStore nodeStore = (DocumentNodeStore) indexHelper.getNodeStore();
 
-        progressReporter.reindexingTraversalStart("/");
-
         NodeStateEntryTraverser nsep =
                 new NodeStateEntryTraverser(rootDocumentState.getRootRevision(),
                         nodeStore, getMongoDocumentStore())
@@ -100,6 +98,9 @@ public class DocumentStoreIndexer implem
                         .withPathPredicate(indexer::shouldInclude);
         closer.register(nsep);
 
+        //As first traversal is for dumping change the message prefix
+        progressReporter.setMessagePrefix("Dumping");
+
         //TODO Use flatFileStore only if we have relative nodes to be indexed
         FlatFileStore flatFileStore = new FlatFileNodeStoreBuilder(nsep, indexHelper.getWorkDir())
                 .withBlobStore(indexHelper.getGCBlobStore())
@@ -107,7 +108,10 @@ public class DocumentStoreIndexer implem
                 .build();
         closer.register(flatFileStore);
 
+        progressReporter.reindexingTraversalStart("/");
+
         for (NodeStateEntry entry : flatFileStore) {
+            reportDocumentRead(entry.getPath());
             indexer.index(entry);
         }
 

Modified: jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/FlatFileNodeStoreBuilder.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/FlatFileNodeStoreBuilder.java?rev=1817741&r1=1817740&r2=1817741&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/FlatFileNodeStoreBuilder.java (original)
+++ jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/FlatFileNodeStoreBuilder.java Mon Dec 11 05:44:33 2017
@@ -25,6 +25,7 @@ import java.io.Writer;
 import java.util.Collections;
 
 import com.google.common.base.Charsets;
+import com.google.common.base.Stopwatch;
 import com.google.common.io.Files;
 import org.apache.commons.io.FileUtils;
 import org.apache.jackrabbit.oak.index.indexer.document.NodeStateEntry;
@@ -92,6 +93,7 @@ public class FlatFileNodeStoreBuilder {
 
     private File writeToStore(File dir, String fileName) throws IOException {
         File file = new File(dir, fileName);
+        Stopwatch sw = Stopwatch.createStarted();
         try (
                 Writer w = Files.newWriter(file, Charsets.UTF_8);
                 NodeStateEntryWriter entryWriter = new NodeStateEntryWriter(blobStore, w)
@@ -100,6 +102,7 @@ public class FlatFileNodeStoreBuilder {
                 entryWriter.write(e);
             }
         }
+        log.info("Dumped nodestates in json format in {}", sw);
         return file;
     }