From 7906e696494c5cb715667d56082e48d07163fe82 Mon Sep 17 00:00:00 2001 From: Zoltan Haindrich Date: Tue, 18 Mar 2025 10:14:07 +0000 Subject: [PATCH 1/2] fixes --- .../test/MSQTestOverlordServiceClient.java | 2 +- .../druid/msq/test/MSQTestWorkerClient.java | 1 - quidem-ut/pom.xml | 11 ++++- .../org.apache.druid.quidem.QTest/dart1.iq | 46 +++++++++++++++++++ 4 files changed, 57 insertions(+), 3 deletions(-) create mode 100644 quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/dart1.iq diff --git a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestOverlordServiceClient.java b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestOverlordServiceClient.java index 903ff1544c3f..3a034f147bed 100644 --- a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestOverlordServiceClient.java +++ b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestOverlordServiceClient.java @@ -137,7 +137,7 @@ public ListenableFuture runTask(String taskId, Object taskObject) throw new ISE(e, "Unable to run"); } finally { - if (controller != null && queryListener != null) { + if (queryListener != null && queryListener.reportMap != null) { reports.put(controller.queryId(), queryListener.getReportMap()); } } diff --git a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerClient.java b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerClient.java index 9f482912f315..69741a9953cb 100644 --- a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerClient.java +++ b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestWorkerClient.java @@ -158,7 +158,6 @@ public void close() { if (closed.compareAndSet(false, true)) { inMemoryWorkers.forEach((k, v) -> v.stop()); - inMemoryWorkers.clear(); } } } diff --git a/quidem-ut/pom.xml b/quidem-ut/pom.xml index f06fddf94622..6c7aab5c4279 100644 --- a/quidem-ut/pom.xml +++ b/quidem-ut/pom.xml @@ -424,7 +424,12 @@ test-jar ${project.parent.version} - + + org.apache.druid.extensions + druid-multi-stage-query + test-jar + ${project.parent.version} + org.apache.druid.extensions druid-datasketches @@ -514,6 +519,10 @@ hamcrest-core compile + + org.mockito + mockito-core + diff --git a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/dart1.iq b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/dart1.iq new file mode 100644 index 000000000000..b8a8415e4f88 --- /dev/null +++ b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/dart1.iq @@ -0,0 +1,46 @@ +!set dartQueryId 00000000-0000-0000-0000-000000000000 +!use druidtest://?componentSupplier=DartComponentSupplier +!set outputformat mysql + +select * from numfoo; ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +| __time | dim1 | dim2 | dim3 | dim4 | dim5 | dim6 | dbl1 | dbl2 | f1 | f2 | l1 | l2 | cnt | m1 | m2 | unique_dim1 | ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +| 2000-01-01 00:00:00.000 | | a | ["a","b"] | a | aa | 1 | 1.0 | | 1.0 | | 7 | | 1 | 1.0 | 1.0 | "AQAAAEAAAA==" | +| 2000-01-02 00:00:00.000 | 10.1 | | ["b","c"] | a | ab | 2 | 1.7 | 1.7 | 0.1 | 0.1 | 325323 | 325323 | 1 | 2.0 | 2.0 | "AQAAAQAAAAHNBA==" | +| 2001-01-01 00:00:00.000 | 1 | a | | b | ad | 4 | | | | | | | 1 | 4.0 | 4.0 | "AQAAAQAAAAFREA==" | +| 2001-01-02 00:00:00.000 | def | abc | | b | aa | 5 | | | | | | | 1 | 5.0 | 5.0 | "AQAAAQAAAACyEA==" | +| 2001-01-03 00:00:00.000 | abc | | | b | ab | 6 | | | | | | | 1 | 6.0 | 6.0 | "AQAAAQAAAAEkAQ==" | +| 2000-01-03 00:00:00.000 | 2 | | d | a | ba | 3 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0 | 1 | 3.0 | 3.0 | "AQAAAQAAAAOzAg==" | ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +(6 rows) + +!ok +select * from numfoo; ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +| __time | dim1 | dim2 | dim3 | dim4 | dim5 | dim6 | dbl1 | dbl2 | f1 | f2 | l1 | l2 | cnt | m1 | m2 | unique_dim1 | ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +| 2000-01-01 00:00:00.000 | | a | ["a","b"] | a | aa | 1 | 1.0 | | 1.0 | | 7 | | 1 | 1.0 | 1.0 | "AQAAAEAAAA==" | +| 2000-01-02 00:00:00.000 | 10.1 | | ["b","c"] | a | ab | 2 | 1.7 | 1.7 | 0.1 | 0.1 | 325323 | 325323 | 1 | 2.0 | 2.0 | "AQAAAQAAAAHNBA==" | +| 2000-01-03 00:00:00.000 | 2 | | d | a | ba | 3 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0 | 1 | 3.0 | 3.0 | "AQAAAQAAAAOzAg==" | +| 2001-01-01 00:00:00.000 | 1 | a | | b | ad | 4 | | | | | | | 1 | 4.0 | 4.0 | "AQAAAQAAAAFREA==" | +| 2001-01-02 00:00:00.000 | def | abc | | b | aa | 5 | | | | | | | 1 | 5.0 | 5.0 | "AQAAAQAAAACyEA==" | +| 2001-01-03 00:00:00.000 | abc | | | b | ab | 6 | | | | | | | 1 | 6.0 | 6.0 | "AQAAAQAAAAEkAQ==" | ++-------------------------+------+------+-----------+------+------+------+------+------+-----+-----+--------+--------+-----+-----+-----+--------------------+ +(6 rows) + +!ok +select length(dim1) from numfoo; ++--------+ +| EXPR$0 | ++--------+ +| 0 | +| 1 | +| 1 | +| 3 | +| 3 | +| 4 | ++--------+ +(6 rows) + +!ok From 567ae40d36d3f69d57294fb3283dd1660333987c Mon Sep 17 00:00:00 2001 From: Zoltan Haindrich Date: Tue, 18 Mar 2025 16:55:22 +0000 Subject: [PATCH 2/2] fix cleanup --- .../druid/msq/test/TestDartControllerContextFactoryImpl.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/TestDartControllerContextFactoryImpl.java b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/TestDartControllerContextFactoryImpl.java index 89209f012529..9a9aed874259 100644 --- a/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/TestDartControllerContextFactoryImpl.java +++ b/extensions-core/multi-stage-query/src/test/java/org/apache/druid/msq/test/TestDartControllerContextFactoryImpl.java @@ -125,6 +125,9 @@ protected Worker newWorker(String workerId) catch (Exception e) { throw new RuntimeException(e); } + finally { + inMemoryWorkers.remove(workerId); + } }); return worker;