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

karan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/druid.git


The following commit(s) were added to refs/heads/master by this push:
     new 092c04b6f63 Quidem stabilization fixes (#18062)
092c04b6f63 is described below

commit 092c04b6f632fdf2056ef306f0a87f07d5dd1d64
Author: Zoltan Haindrich <[email protected]>
AuthorDate: Tue Jun 3 10:56:21 2025 +0200

    Quidem stabilization fixes (#18062)
    
    
    
    This PR contains minor fixes related to quidem test runs:
    
        change to ConcurrentMap in MSQTestControllerContext to fix 
ConcurrentModificationException
        switched MSQTestControllerContext to use a static bufferpool - as a new 
one have cause some misleading log messages about memory leaks
        added @LazySingleton to DruidMeta descendant classes - this reduces 
garbage ; and could enable to reuse the Meta later
---
 .../test/java/org/apache/druid/msq/test/MSQTestControllerContext.java | 2 +-
 .../src/test/java/org/apache/druid/msq/test/MSQTestWorkerContext.java | 4 +++-
 .../src/test/java/org/apache/druid/sql/avatica/DartDruidMeta.java     | 2 ++
 .../src/test/java/org/apache/druid/sql/avatica/MSQDruidMeta.java      | 2 ++
 4 files changed, 8 insertions(+), 2 deletions(-)

diff --git 
a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestControllerContext.java
 
b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestControllerContext.java
index b42240dd614..a2600999d90 100644
--- 
a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestControllerContext.java
+++ 
b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestControllerContext.java
@@ -88,7 +88,7 @@ public class MSQTestControllerContext implements 
ControllerContext, DartControll
   private static final Logger log = new Logger(MSQTestControllerContext.class);
   private static final int NUM_WORKERS = 4;
   private final TaskActionClient taskActionClient;
-  private final Map<String, Worker> inMemoryWorkers = new HashMap<>();
+  private final Map<String, Worker> inMemoryWorkers = new 
ConcurrentHashMap<>();
   private final ConcurrentMap<String, TaskStatus> statusMap = new 
ConcurrentHashMap<>();
   private static final ListeningExecutorService EXECUTOR = 
MoreExecutors.listeningDecorator(Execs.multiThreaded(
       NUM_WORKERS,
diff --git 
a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerContext.java
 
b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerContext.java
index 865457d4062..befe05d64c2 100644
--- 
a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerContext.java
+++ 
b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerContext.java
@@ -55,6 +55,8 @@ import java.util.Map;
 
 public class MSQTestWorkerContext implements WorkerContext
 {
+  private static final StupidPool<ByteBuffer> BUFFER_POOL = new 
StupidPool<>("testProcessing", () -> ByteBuffer.allocate(1_000_000));
+
   private final String workerId;
   private final Controller controller;
   private final ObjectMapper mapper;
@@ -263,7 +265,7 @@ public class MSQTestWorkerContext implements WorkerContext
     public ProcessingBuffers processingBuffers()
     {
       return new ProcessingBuffers(
-          new StupidPool<>("testProcessing", () -> 
ByteBuffer.allocate(1_000_000)),
+          BUFFER_POOL,
           new Bouncer(1)
       );
     }
diff --git 
a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/sql/avatica/DartDruidMeta.java
 
b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/sql/avatica/DartDruidMeta.java
index 48d2f831c2d..48fc44a67a3 100644
--- 
a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/sql/avatica/DartDruidMeta.java
+++ 
b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/sql/avatica/DartDruidMeta.java
@@ -20,10 +20,12 @@
 package org.apache.druid.sql.avatica;
 
 import com.google.inject.Inject;
+import org.apache.druid.guice.LazySingleton;
 import org.apache.druid.msq.dart.Dart;
 import org.apache.druid.server.security.AuthenticatorMapper;
 import org.apache.druid.sql.SqlStatementFactory;
 
+@LazySingleton
 public class DartDruidMeta extends DruidMeta
 {
   @Inject
diff --git 
a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/sql/avatica/MSQDruidMeta.java
 
b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/sql/avatica/MSQDruidMeta.java
index d850a391237..335de65fef2 100644
--- 
a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/sql/avatica/MSQDruidMeta.java
+++ 
b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/sql/avatica/MSQDruidMeta.java
@@ -27,6 +27,7 @@ import com.google.inject.Inject;
 import org.apache.calcite.avatica.Meta;
 import org.apache.calcite.rel.type.RelDataType;
 import org.apache.commons.lang3.RegExUtils;
+import org.apache.druid.guice.LazySingleton;
 import org.apache.druid.java.util.common.ISE;
 import org.apache.druid.msq.guice.MultiStageQuery;
 import org.apache.druid.msq.indexing.report.MSQResultsReport.ColumnAndType;
@@ -48,6 +49,7 @@ import java.util.Map;
 import java.util.Map.Entry;
 import java.util.regex.Pattern;
 
+@LazySingleton
 public class MSQDruidMeta extends DruidMeta
 {
   protected final MSQTestOverlordServiceClient overlordClient;


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to