From 0458da45265599feff44903a9bd55877411b7866 Mon Sep 17 00:00:00 2001 From: Benjamin Prud'homme Date: Sun, 25 Aug 2024 17:55:53 -0400 Subject: [PATCH] Refactorings for additional JMH tests --- .../federation/RepositoryFederatedServiceIntegrationTest.java | 2 +- .../query/algebra/evaluation/impl/MinimalContextNowTest.java | 2 +- .../java/org/eclipse/rdf4j/sail/helpers/AbstractSailTest.java | 2 +- .../rdf4j/sail/lucene/impl/AbstractGenericLuceneTest.java | 4 ++-- .../rdf4j/sail/memory/model/MemStatementListTestIT.java | 4 ++-- .../java/org/eclipse/rdf4j/sail/shacl/MultithreadedTest.java | 4 ++-- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/compliance/repository/src/test/java/org/eclipse/rdf4j/repository/sparql/federation/RepositoryFederatedServiceIntegrationTest.java b/compliance/repository/src/test/java/org/eclipse/rdf4j/repository/sparql/federation/RepositoryFederatedServiceIntegrationTest.java index 763d3c2a6d2..9b92fd657e3 100644 --- a/compliance/repository/src/test/java/org/eclipse/rdf4j/repository/sparql/federation/RepositoryFederatedServiceIntegrationTest.java +++ b/compliance/repository/src/test/java/org/eclipse/rdf4j/repository/sparql/federation/RepositoryFederatedServiceIntegrationTest.java @@ -295,7 +295,7 @@ public void test9_connectionHandling() throws Exception { .map(value -> vf.createStatement(iri("s1"), RDFS.LABEL, value)) .collect(Collectors.toList())); - ExecutorService executor = Executors.newFixedThreadPool(5); + ExecutorService executor = Executors.newVirtualThreadPerTaskExecutor(); try { for (int i = 0; i < 5; i++) { executor.submit(() -> { diff --git a/core/queryalgebra/evaluation/src/test/java/org/eclipse/rdf4j/query/algebra/evaluation/impl/MinimalContextNowTest.java b/core/queryalgebra/evaluation/src/test/java/org/eclipse/rdf4j/query/algebra/evaluation/impl/MinimalContextNowTest.java index a4d5af4ebb5..99102c89d61 100644 --- a/core/queryalgebra/evaluation/src/test/java/org/eclipse/rdf4j/query/algebra/evaluation/impl/MinimalContextNowTest.java +++ b/core/queryalgebra/evaluation/src/test/java/org/eclipse/rdf4j/query/algebra/evaluation/impl/MinimalContextNowTest.java @@ -49,7 +49,7 @@ public void testConcurrentAccessToNow() throws ExecutionException, InterruptedEx int numberOfIterations = 100; int numberOfThreads = 10; - ExecutorService executorService = Executors.newCachedThreadPool(); + ExecutorService executorService = Executors.newVirtualThreadPerTaskExecutor(); try { for (int i = 0; i < numberOfIterations; i++) { diff --git a/core/sail/api/src/test/java/org/eclipse/rdf4j/sail/helpers/AbstractSailTest.java b/core/sail/api/src/test/java/org/eclipse/rdf4j/sail/helpers/AbstractSailTest.java index c1c64931f40..0d3b6312d58 100644 --- a/core/sail/api/src/test/java/org/eclipse/rdf4j/sail/helpers/AbstractSailTest.java +++ b/core/sail/api/src/test/java/org/eclipse/rdf4j/sail/helpers/AbstractSailTest.java @@ -101,7 +101,7 @@ public void testConcurrentAutoInit() throws Exception { CountDownLatch latch = new CountDownLatch(count); for (int i = 0; i < count; i++) { - new Thread(new SailGetConnectionTask(subject, latch)).start(); + Thread.ofVirtual().start(new SailGetConnectionTask(subject, latch)); } if (!latch.await(30, TimeUnit.SECONDS)) { diff --git a/core/sail/lucene/src/test/java/org/eclipse/rdf4j/sail/lucene/impl/AbstractGenericLuceneTest.java b/core/sail/lucene/src/test/java/org/eclipse/rdf4j/sail/lucene/impl/AbstractGenericLuceneTest.java index 1e09c30169e..6aee01eb74f 100644 --- a/core/sail/lucene/src/test/java/org/eclipse/rdf4j/sail/lucene/impl/AbstractGenericLuceneTest.java +++ b/core/sail/lucene/src/test/java/org/eclipse/rdf4j/sail/lucene/impl/AbstractGenericLuceneTest.java @@ -773,7 +773,7 @@ public void testMultithreadedAdd() throws InterruptedException { final CountDownLatch endLatch = new CountDownLatch(numThreads); final Set exceptions = ConcurrentHashMap.newKeySet(); for (int i = 0; i < numThreads; i++) { - new Thread(new Runnable() { + Thread.ofVirtual().start(new Runnable() { private final long iterationCount = 10 + Math.round(random.nextDouble() * 100); @@ -791,7 +791,7 @@ public void run() { endLatch.countDown(); } } - }).start(); + }); } startLatch.countDown(); endLatch.await(); diff --git a/core/sail/memory/src/test/java/org/eclipse/rdf4j/sail/memory/model/MemStatementListTestIT.java b/core/sail/memory/src/test/java/org/eclipse/rdf4j/sail/memory/model/MemStatementListTestIT.java index c8594d67184..3f3fa9d278f 100644 --- a/core/sail/memory/src/test/java/org/eclipse/rdf4j/sail/memory/model/MemStatementListTestIT.java +++ b/core/sail/memory/src/test/java/org/eclipse/rdf4j/sail/memory/model/MemStatementListTestIT.java @@ -106,7 +106,7 @@ public void addMultipleThreads() throws ExecutionException, InterruptedException MemStatementList memStatementList = new MemStatementList(); - ExecutorService executorService = Executors.newCachedThreadPool(); + ExecutorService executorService = Executors.newVirtualThreadPerTaskExecutor(); try { List> collect = partition @@ -153,7 +153,7 @@ public void addMultipleThreadsAndCleanupThread() throws ExecutionException, Inte CountDownLatch countDownLatch = new CountDownLatch(1); - ExecutorService executorService = Executors.newCachedThreadPool(); + ExecutorService executorService = Executors.newVirtualThreadPerTaskExecutor(); try { Future cleanupFuture = executorService.submit(() -> { diff --git a/core/sail/shacl/src/test/java/org/eclipse/rdf4j/sail/shacl/MultithreadedTest.java b/core/sail/shacl/src/test/java/org/eclipse/rdf4j/sail/shacl/MultithreadedTest.java index 89aea92cac9..2566d693ec4 100644 --- a/core/sail/shacl/src/test/java/org/eclipse/rdf4j/sail/shacl/MultithreadedTest.java +++ b/core/sail/shacl/src/test/java/org/eclipse/rdf4j/sail/shacl/MultithreadedTest.java @@ -223,7 +223,7 @@ private void parallelTest(List> list, IsolationLevels isolatio Random r = new Random(52465534); - ExecutorService executorService = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors() * 2); + ExecutorService executorService = Executors.newVirtualThreadPerTaskExecutor(); try { for (int i = 0; i < 3; i++) { @@ -467,7 +467,7 @@ private void runValidationFailuresTest(Sail sail, IsolationLevels isolationLevel deadlockDetectionThread.setDaemon(true); deadlockDetectionThread.start(); - executorService = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors() * 2); + executorService = Executors.newVirtualThreadPerTaskExecutor(); Utils.loadShapeData(repository, "complexBenchmark/shacl.trig");