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