This is an automated email from the ASF dual-hosted git repository.

nfsantos pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/jackrabbit-oak.git


The following commit(s) were added to refs/heads/trunk by this push:
     new 92f3247c77 OAK-11526 - Reduce logging verbosity in IndexWriterPool 
when closing writers (#2118)
92f3247c77 is described below

commit 92f3247c77fb3d12d4a5417da46be2666d9ec9e5
Author: Nuno Santos <nsan...@adobe.com>
AuthorDate: Wed Feb 26 08:29:51 2025 +0100

    OAK-11526 - Reduce logging verbosity in IndexWriterPool when closing 
writers (#2118)
---
 .../oak/plugins/index/IndexUpdateProvider.java       |  8 +-------
 .../index/progress/IndexingProgressReporter.java     |  2 +-
 .../plugins/index/lucene/writer/IndexWriterPool.java |  9 ++++-----
 .../index/lucene/writer/PooledLuceneIndexWriter.java |  3 ++-
 .../oak/index/IndexImporterSupportBase.java          | 20 +++++++++++---------
 5 files changed, 19 insertions(+), 23 deletions(-)

diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdateProvider.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdateProvider.java
index 812c68e072..5be445bdaa 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdateProvider.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/IndexUpdateProvider.java
@@ -28,13 +28,7 @@ import org.jetbrains.annotations.Nullable;
 
 public class IndexUpdateProvider implements EditorProvider {
 
-    private static final IndexUpdateCallback NOOP_CALLBACK =
-            new IndexUpdateCallback() {
-                @Override
-                public void indexUpdate() {
-                    // do nothing
-                }
-            };
+    private static final IndexUpdateCallback NOOP_CALLBACK = () -> {};
 
     private final IndexEditorProvider provider;
 
diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/progress/IndexingProgressReporter.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/progress/IndexingProgressReporter.java
index d665b20d14..527578556c 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/progress/IndexingProgressReporter.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/progress/IndexingProgressReporter.java
@@ -91,7 +91,7 @@ public class IndexingProgressReporter implements 
NodeTraversalCallback {
     }
 
     public void traversedNode(PathSource pathSource) throws 
CommitFailedException {
-        if (++traversalCount % 10_000 == 0) {
+        if (++traversalCount % 100_000 == 0) {
             double rate = traversalRateEstimator.getNodesTraversedPerSecond();
             String formattedRate = String.format("%1.2f nodes/s, %1.2f 
nodes/hr", rate, rate * 3600);
             String estimate = estimatePendingTraversal(rate);
diff --git 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/IndexWriterPool.java
 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/IndexWriterPool.java
index a76e2ae8fc..a9d9104c5a 100644
--- 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/IndexWriterPool.java
+++ 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/IndexWriterPool.java
@@ -216,7 +216,6 @@ public class IndexWriterPool {
                     if (op == SHUTDOWN) {
                         queue.add(SHUTDOWN);
                         LOG.info("[{}] Shutting down worker", id);
-                        printStatistics();
                         return;
                     }
                     long start = System.nanoTime();
@@ -294,13 +293,13 @@ public class IndexWriterPool {
     public boolean closeWriter(LuceneIndexWriter writer, long timestamp) 
throws IOException {
         checkOpen();
         try {
-            LOG.info("Closing writer: {}", writer);
+            LOG.debug("Closing writer: {}", writer);
             // Before closing the writer, we must wait until all previously 
submitted operations for
             // this writer are processed. For simplicity, we wait instead 
until ALL operations currently
             // in the queue are processed, because otherwise it would be more 
complex to distinguish which
             // operations are for which writer.
             long seqNumber = flushBatch();
-            LOG.info("All pending operations enqueued. Waiting until all 
batches up to {} are processed", seqNumber);
+            LOG.debug("All pending operations enqueued. Waiting until all 
batches up to {} are processed", seqNumber);
             synchronized (pendingBatchesLock) {
                 while (true) {
                     Long earliestPending = pendingBatches.isEmpty() ? null : 
pendingBatches.stream().min(Long::compareTo).get();
@@ -311,12 +310,12 @@ public class IndexWriterPool {
                     pendingBatchesLock.wait();
                 }
             }
-            LOG.info("All batches up to {} processed. Enqueuing close 
operation for writer {}", seqNumber, writer);
+            LOG.debug("All batches up to {} processed. Enqueuing close 
operation for writer {}", seqNumber, writer);
             SynchronousQueue<CloseResult> closeOpSync = new 
SynchronousQueue<>();
             batch.add(new CloseWriterOperation(writer, timestamp, 
closeOpSync));
             flushBatch();
             CloseResult res = closeOpSync.take();
-            LOG.info("Writer {} closed. Result: {}", writer, res);
+            LOG.debug("Writer {} closed. Result: {}", writer, res);
             if (res.error == null) {
                 return res.result;
             } else {
diff --git 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/PooledLuceneIndexWriter.java
 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/PooledLuceneIndexWriter.java
index fc922e9225..73e27e5ff6 100644
--- 
a/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/PooledLuceneIndexWriter.java
+++ 
b/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/writer/PooledLuceneIndexWriter.java
@@ -41,6 +41,7 @@ public class PooledLuceneIndexWriter implements 
LuceneIndexWriter {
         this.writerPool = writerPool;
         this.delegateWriter = delegateWriter;
         this.indexName = indexName;
+        LOG.debug("[{}] Created writer", indexName);
     }
 
     @Override
@@ -57,7 +58,7 @@ public class PooledLuceneIndexWriter implements 
LuceneIndexWriter {
 
     @Override
     public boolean close(long timestamp) throws IOException {
-        LOG.info("[{}] Shutting down PipelinedFullTextIndexWriter", indexName);
+        LOG.debug("[{}] Shutting down writer", indexName);
         return writerPool.closeWriter(delegateWriter, timestamp);
     }
 
diff --git 
a/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/IndexImporterSupportBase.java
 
b/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/IndexImporterSupportBase.java
index 96df62f11d..19aa30c76b 100644
--- 
a/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/IndexImporterSupportBase.java
+++ 
b/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/IndexImporterSupportBase.java
@@ -40,15 +40,17 @@ public abstract class IndexImporterSupportBase {
     }
 
     public void importIndex(File importDir) throws IOException, 
CommitFailedException {
-        IndexImporter importer = new IndexImporter(
-                nodeStore,
-                importDir,
-                createIndexEditorProvider(),
-                createLock(),
-                indexHelper.getStatisticsProvider(),
-                indexHelper.getIndexReporter());
-        addImportProviders(importer);
-        importer.importIndex();
+        try (IndexEditorProvider providers = createIndexEditorProvider()) {
+            IndexImporter importer = new IndexImporter(
+                    nodeStore,
+                    importDir,
+                    providers,
+                    createLock(),
+                    indexHelper.getStatisticsProvider(),
+                    indexHelper.getIndexReporter());
+            addImportProviders(importer);
+            importer.importIndex();
+        }
     }
 
     private AsyncIndexerLock createLock() {

Reply via email to