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

reschke 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 aaa5e82948 OAK-11888: Remove usage of Guava ThreadBuilderFactory 
(#2484)
aaa5e82948 is described below

commit aaa5e8294820558fcc7abad2f8b629904873c067
Author: Julian Reschke <resc...@apache.org>
AuthorDate: Tue Sep 2 11:39:00 2025 +0200

    OAK-11888: Remove usage of Guava ThreadBuilderFactory (#2484)
---
 .../oak/plugins/atomic/AtomicCounterEditorProvider.java       |  5 ++---
 .../oak/plugins/index/lucene/writer/IndexWriterPool.java      | 11 +++--------
 .../document/flatfile/pipelined/PipelinedStrategy.java        |  4 ++--
 .../flatfile/pipelined/PipelinedTreeStoreStrategy.java        |  6 +++---
 .../org/apache/jackrabbit/oak/index/ThreadMonitorTest.java    |  4 ++--
 .../flatfile/pipelined/PipelinedMongoServerSelectorTest.java  |  8 ++++----
 .../main/java/org/apache/jackrabbit/oak/run/Downloader.java   |  7 ++-----
 .../oak/plugins/index/elastic/ElasticIndexStatistics.java     |  7 ++-----
 8 files changed, 20 insertions(+), 32 deletions(-)

diff --git 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/atomic/AtomicCounterEditorProvider.java
 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/atomic/AtomicCounterEditorProvider.java
index ec94551d86..bd98500a9b 100644
--- 
a/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/atomic/AtomicCounterEditorProvider.java
+++ 
b/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/atomic/AtomicCounterEditorProvider.java
@@ -22,6 +22,7 @@ import java.util.concurrent.ThreadFactory;
 import java.util.concurrent.atomic.AtomicReference;
 import java.util.function.Supplier;
 
+import org.apache.commons.lang3.concurrent.BasicThreadFactory;
 import org.apache.jackrabbit.oak.api.CommitFailedException;
 import org.apache.jackrabbit.oak.commons.concurrent.ExecutorCloser;
 import org.apache.jackrabbit.oak.osgi.OsgiWhiteboard;
@@ -43,8 +44,6 @@ import org.osgi.service.component.annotations.Reference;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import org.apache.jackrabbit.guava.common.util.concurrent.ThreadFactoryBuilder;
-
 import static 
org.osgi.service.component.annotations.ReferenceCardinality.OPTIONAL;
 import static org.osgi.service.component.annotations.ReferencePolicy.DYNAMIC;
 
@@ -169,7 +168,7 @@ public class AtomicCounterEditorProvider implements 
EditorProvider {
     @Activate
     public void activate(BundleContext context) {
         whiteboard.set(new OsgiWhiteboard(context));
-        ThreadFactory tf = new 
ThreadFactoryBuilder().setNameFormat("atomic-counter-%d").build();
+        ThreadFactory tf = 
BasicThreadFactory.builder().namingPattern("atomic-counter-%d").build();
         scheduler.set(Executors.newScheduledThreadPool(10, tf));
     }
     
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 e68ea27cc3..56ab1c6f05 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
@@ -18,7 +18,7 @@
  */
 package org.apache.jackrabbit.oak.plugins.index.lucene.writer;
 
-import org.apache.jackrabbit.guava.common.util.concurrent.ThreadFactoryBuilder;
+import org.apache.commons.lang3.concurrent.BasicThreadFactory;
 import org.apache.jackrabbit.oak.commons.concurrent.ExecutorCloser;
 import org.apache.jackrabbit.oak.plugins.index.ConfigHelper;
 import org.apache.jackrabbit.oak.plugins.index.FormattingUtils;
@@ -262,13 +262,8 @@ public class IndexWriterPool {
      * WARN: This is not thread safe.
      */
     public IndexWriterPool() {
-        this.writersPool = Executors.newFixedThreadPool(numberOfThreads, new 
ThreadFactoryBuilder()
-                .setDaemon(true)
-                .build());
-        this.monitorTaskExecutor = 
Executors.newSingleThreadScheduledExecutor(new ThreadFactoryBuilder()
-                .setDaemon(true)
-                .setNameFormat("index-writer-monitor")
-                .build());
+        this.writersPool = Executors.newFixedThreadPool(numberOfThreads, 
BasicThreadFactory.builder().daemon().build());
+        this.monitorTaskExecutor = 
Executors.newSingleThreadScheduledExecutor(BasicThreadFactory.builder().daemon().namingPattern("index-writer-monitor").build());
         this.workers = IntStream.range(0, numberOfThreads)
                 .mapToObj(Worker::new)
                 .collect(Collectors.toList());
diff --git 
a/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedStrategy.java
 
b/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedStrategy.java
index 840cb18468..b6e087e63e 100644
--- 
a/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedStrategy.java
+++ 
b/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedStrategy.java
@@ -21,7 +21,7 @@ package 
org.apache.jackrabbit.oak.index.indexer.document.flatfile.pipelined;
 import com.mongodb.MongoClientSettings;
 import com.mongodb.ConnectionString;
 import org.apache.commons.io.FileUtils;
-import org.apache.jackrabbit.guava.common.util.concurrent.ThreadFactoryBuilder;
+import org.apache.commons.lang3.concurrent.BasicThreadFactory;
 import org.apache.jackrabbit.oak.commons.Compression;
 import org.apache.jackrabbit.oak.commons.IOUtils;
 import org.apache.jackrabbit.oak.commons.concurrent.ExecutorCloser;
@@ -354,7 +354,7 @@ public class PipelinedStrategy extends 
IndexStoreSortStrategyBase {
     public File createSortedStoreFile() throws IOException {
         int numberOfThreads = 1 + numberOfTransformThreads + 1 + 1; // dump, 
transform, sort threads, sorted files merge
         ThreadMonitor threadMonitor = ThreadMonitor.newInstance();
-        var threadFactory = new 
ThreadMonitor.AutoRegisteringThreadFactory(threadMonitor, new 
ThreadFactoryBuilder().setDaemon(true).build());
+        var threadFactory = new 
ThreadMonitor.AutoRegisteringThreadFactory(threadMonitor, 
BasicThreadFactory.builder().daemon().build());
         ExecutorService threadPool = 
Executors.newFixedThreadPool(numberOfThreads, threadFactory);
         MongoDocumentFilter documentFilter = new 
MongoDocumentFilter(filteredPath, suffixesToSkip);
         NodeDocumentCodec nodeDocumentCodec = new NodeDocumentCodec(docStore, 
Collection.NODES, documentFilter, 
MongoClientSettings.getDefaultCodecRegistry());
diff --git 
a/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedTreeStoreStrategy.java
 
b/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedTreeStoreStrategy.java
index 85cbd9c1d6..2ceb16d440 100644
--- 
a/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedTreeStoreStrategy.java
+++ 
b/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedTreeStoreStrategy.java
@@ -21,7 +21,7 @@ package 
org.apache.jackrabbit.oak.index.indexer.document.flatfile.pipelined;
 import com.mongodb.MongoClientSettings;
 import com.mongodb.ConnectionString;
 import org.apache.commons.io.FileUtils;
-import org.apache.jackrabbit.guava.common.util.concurrent.ThreadFactoryBuilder;
+import org.apache.commons.lang3.concurrent.BasicThreadFactory;
 import org.apache.jackrabbit.oak.commons.Compression;
 import org.apache.jackrabbit.oak.commons.IOUtils;
 import org.apache.jackrabbit.oak.commons.concurrent.ExecutorCloser;
@@ -341,7 +341,7 @@ public class PipelinedTreeStoreStrategy extends 
IndexStoreSortStrategyBase {
     public File createSortedStoreFile() throws IOException {
         int numberOfThreads = 1 + numberOfTransformThreads + 1; // dump, 
transform, sort threads
         ExecutorService threadPool = 
Executors.newFixedThreadPool(numberOfThreads,
-                new ThreadFactoryBuilder().setDaemon(true).build()
+                BasicThreadFactory.builder().daemon().build()
         );
         MongoDocumentFilter documentFilter = new 
MongoDocumentFilter(filteredPath, suffixesToSkip);
         NodeDocumentCodec nodeDocumentCodec = new NodeDocumentCodec(docStore, 
Collection.NODES, documentFilter, 
MongoClientSettings.getDefaultCodecRegistry());
@@ -385,7 +385,7 @@ public class PipelinedTreeStoreStrategy extends 
IndexStoreSortStrategyBase {
                     pathFilters,
                     statisticsProvider,
                     indexingReporter,
-                    new ThreadFactoryBuilder().setDaemon(true).build(),
+                    BasicThreadFactory.builder().daemon().build(),
                     minModified
             ));
 
diff --git 
a/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/index/ThreadMonitorTest.java
 
b/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/index/ThreadMonitorTest.java
index 436aa7165e..d51010fa98 100644
--- 
a/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/index/ThreadMonitorTest.java
+++ 
b/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/index/ThreadMonitorTest.java
@@ -18,7 +18,7 @@
  */
 package org.apache.jackrabbit.oak.index;
 
-import org.apache.jackrabbit.guava.common.util.concurrent.ThreadFactoryBuilder;
+import org.apache.commons.lang3.concurrent.BasicThreadFactory;
 import org.apache.jackrabbit.oak.commons.concurrent.ExecutorCloser;
 import org.junit.After;
 import org.junit.Before;
@@ -115,7 +115,7 @@ public class ThreadMonitorTest {
         monitor.start();
         ThreadMonitor.AutoRegisteringThreadFactory factory = new 
ThreadMonitor.AutoRegisteringThreadFactory(
                 monitor,
-                new ThreadFactoryBuilder().setNameFormat("test-thread").build()
+                
BasicThreadFactory.builder().namingPattern("test-thread").build()
         );
         ExecutorService executor = Executors.newSingleThreadExecutor(factory);
         try {
diff --git 
a/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedMongoServerSelectorTest.java
 
b/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedMongoServerSelectorTest.java
index 15984e3b69..c166866546 100644
--- 
a/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedMongoServerSelectorTest.java
+++ 
b/oak-run-commons/src/test/java/org/apache/jackrabbit/oak/index/indexer/document/flatfile/pipelined/PipelinedMongoServerSelectorTest.java
@@ -27,7 +27,7 @@ import com.mongodb.connection.ServerConnectionState;
 import com.mongodb.connection.ServerDescription;
 import com.mongodb.connection.ServerType;
 import com.mongodb.event.ClusterDescriptionChangedEvent;
-import org.apache.jackrabbit.guava.common.util.concurrent.ThreadFactoryBuilder;
+import org.apache.commons.lang3.concurrent.BasicThreadFactory;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -73,9 +73,9 @@ public class PipelinedMongoServerSelectorTest {
 
     @Before
     public void setUp() {
-        threadAscending = Executors.newSingleThreadExecutor(new 
ThreadFactoryBuilder().setNameFormat(PipelinedMongoDownloadTask.THREAD_NAME_PREFIX
 + "-ascending").setDaemon(true).build());
-        threadDescending = Executors.newSingleThreadExecutor(new 
ThreadFactoryBuilder().setNameFormat(PipelinedMongoDownloadTask.THREAD_NAME_PREFIX
 + "-descending").setDaemon(true).build());
-        threadOther = Executors.newSingleThreadExecutor(new 
ThreadFactoryBuilder().setNameFormat("mongo-server-selector-test-thread").setDaemon(true).build());
+        threadAscending = 
Executors.newSingleThreadExecutor(BasicThreadFactory.builder().namingPattern(PipelinedMongoDownloadTask.THREAD_NAME_PREFIX
 + "-ascending").daemon().build());
+        threadDescending = 
Executors.newSingleThreadExecutor(BasicThreadFactory.builder().namingPattern(PipelinedMongoDownloadTask.THREAD_NAME_PREFIX
 + "-descending").daemon().build());
+        threadOther = 
Executors.newSingleThreadExecutor(BasicThreadFactory.builder().namingPattern("mongo-server-selector-test-thread").daemon().build());
     }
 
     @After
diff --git 
a/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Downloader.java 
b/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Downloader.java
index 76a2a1fd70..70ce113d1a 100644
--- a/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Downloader.java
+++ b/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Downloader.java
@@ -18,7 +18,7 @@
  */
 package org.apache.jackrabbit.oak.run;
 
-import org.apache.jackrabbit.guava.common.util.concurrent.ThreadFactoryBuilder;
+import org.apache.commons.lang3.concurrent.BasicThreadFactory;
 import org.apache.jackrabbit.oak.commons.IOUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -103,10 +103,7 @@ public class Downloader implements Closeable {
         this.executorService = new ThreadPoolExecutor(
                 (int) Math.ceil(concurrency * .1), concurrency, 60L, 
TimeUnit.SECONDS,
                 new LinkedBlockingQueue<>(),
-                new ThreadFactoryBuilder()
-                        .setNameFormat("downloader-%d")
-                        .setDaemon(true)
-                        .build()
+                
BasicThreadFactory.builder().namingPattern("downloader-%d").daemon().build()
         );
         this.responses = new ArrayList<>();
     }
diff --git 
a/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticIndexStatistics.java
 
b/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticIndexStatistics.java
index 53bd9b7cf5..8cd016f0f2 100644
--- 
a/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticIndexStatistics.java
+++ 
b/oak-search-elastic/src/main/java/org/apache/jackrabbit/oak/plugins/index/elastic/ElasticIndexStatistics.java
@@ -27,6 +27,7 @@ import java.util.concurrent.TimeUnit;
 
 import co.elastic.clients.elasticsearch._types.query_dsl.Query;
 
+import org.apache.commons.lang3.concurrent.BasicThreadFactory;
 import org.apache.jackrabbit.guava.common.base.Ticker;
 import org.apache.jackrabbit.oak.plugins.index.elastic.util.ElasticIndexUtils;
 import org.apache.jackrabbit.oak.plugins.index.search.IndexStatistics;
@@ -39,7 +40,6 @@ import org.apache.jackrabbit.guava.common.cache.CacheLoader;
 import org.apache.jackrabbit.guava.common.cache.LoadingCache;
 import org.apache.jackrabbit.guava.common.util.concurrent.ListenableFuture;
 import org.apache.jackrabbit.guava.common.util.concurrent.ListenableFutureTask;
-import org.apache.jackrabbit.guava.common.util.concurrent.ThreadFactoryBuilder;
 
 import co.elastic.clients.elasticsearch._types.Bytes;
 import co.elastic.clients.elasticsearch.cat.indices.IndicesRecord;
@@ -70,10 +70,7 @@ public class ElasticIndexStatistics implements 
IndexStatistics {
     private static final ExecutorService REFRESH_EXECUTOR = new 
ThreadPoolExecutor(
             0, 4, 60L, TimeUnit.SECONDS,
             new LinkedBlockingQueue<>(),
-            new ThreadFactoryBuilder()
-                    
.setNameFormat("elastic-statistics-cache-refresh-thread-%d")
-                    .setDaemon(true)
-                    .build()
+            
BasicThreadFactory.builder().namingPattern("elastic-statistics-cache-refresh-thread-%d").daemon().build()
     );
 
     private final ElasticConnection elasticConnection;

Reply via email to