This is an automated email from the ASF dual-hosted git repository.
adarshsanjeev 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 716a7c6822d Remove the deprecated CTX_SCAN_SIGNATURE (#18509)
716a7c6822d is described below
commit 716a7c6822d7b4151f989222f8378a29e85c6a81
Author: Adarsh Sanjeev <[email protected]>
AuthorDate: Thu Sep 25 14:55:29 2025 +0530
Remove the deprecated CTX_SCAN_SIGNATURE (#18509)
The method of passing the scan signature as a parameter scanSignature was
marked as deprecated in 06deda9, which added a new function,
ScanQuery#getRowSignature().
This pull request finally removes this deprecated usage.
Since it removes the context parameter, this will cause scan queries to
fail during upgrade from Druid versions BEFORE Druid 29. (i.e - Druid 28 and
older).
---
.../msq/dart/controller/sql/DartSqlEngine.java | 1 -
.../druid/msq/querykit/scan/ScanQueryKit.java | 15 +-
.../org/apache/druid/msq/sql/MSQTaskSqlEngine.java | 1 -
.../org/apache/druid/msq/exec/MSQArraysTest.java | 12 +-
.../druid/msq/exec/MSQComplexGroupByTest.java | 2 +-
.../druid/msq/exec/MSQLoadedSegmentTests.java | 4 +-
.../druid/msq/exec/MSQParseExceptionsTest.java | 16 +-
.../org/apache/druid/msq/exec/MSQSelectTest.java | 106 +++----------
.../org/apache/druid/msq/exec/MSQWindowTest.java | 173 ++-------------------
.../resources/SqlMSQStatementResourcePostTest.java | 2 +-
.../org/apache/druid/msq/test/MSQTestBase.java | 21 ---
.../msqJoinHint.iq | 9 --
.../msqNestedJoinHint.iq | 11 --
.../qaArray/ops_funcs_mv_funcs.02.msq.iq | 36 ++---
.../qaArray/ops_funcs_mv_funcs.03.msq.iq | 12 +-
.../qaArray/sql_explain.msq.iq | 22 ---
.../funcs_and_sql_func_json_keys.03.msq.iq | 3 -
.../funcs_and_sql_func_json_object.03.msq.iq | 2 -
.../funcs_and_sql_func_json_paths.03.msq.iq | 1 -
.../funcs_and_sql_func_json_query.04.msq.iq | 3 -
.../funcs_and_sql_func_json_value.03.dart.iq | 48 +++---
.../funcs_and_sql_func_json_value.03.msq.iq | 48 +++---
.../funcs_and_sql_func_json_value.04.msq.iq | 1 -
.../funcs_and_sql_func_parse_json.02.msq.iq | 1 -
.../funcs_and_sql_func_to_json_string.02.msq.iq | 1 -
.../funcs_and_sql_func_try_parse_json.02.msq.iq | 1 -
.../qaUnnest/array_sql_explain.msq.iq | 2 -
.../qaUnnest/mv_sql_explain.msq.iq | 2 -
.../apache/druid/sql/calcite/rel/DruidQuery.java | 65 +-------
.../sql/calcite/rel/VirtualColumnRegistry.java | 50 ------
.../druid/sql/calcite/run/EngineFeature.java | 9 --
.../druid/sql/calcite/run/NativeSqlEngine.java | 3 -
.../druid/sql/calcite/view/ViewSqlEngine.java | 1 -
.../sql/calcite/CalciteScanSignatureTest.java | 90 -----------
.../druid/sql/calcite/IngestionTestSqlEngine.java | 1 -
35 files changed, 124 insertions(+), 651 deletions(-)
diff --git
a/multi-stage-query/src/main/java/org/apache/druid/msq/dart/controller/sql/DartSqlEngine.java
b/multi-stage-query/src/main/java/org/apache/druid/msq/dart/controller/sql/DartSqlEngine.java
index 2836a1e3ceb..cbef28d98ec 100644
---
a/multi-stage-query/src/main/java/org/apache/druid/msq/dart/controller/sql/DartSqlEngine.java
+++
b/multi-stage-query/src/main/java/org/apache/druid/msq/dart/controller/sql/DartSqlEngine.java
@@ -146,7 +146,6 @@ public class DartSqlEngine implements SqlEngine
switch (feature) {
case CAN_SELECT:
case SCAN_ORDER_BY_NON_TIME:
- case SCAN_NEEDS_SIGNATURE:
case WINDOW_FUNCTIONS:
case WINDOW_LEAF_OPERATOR:
case UNNEST:
diff --git
a/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/scan/ScanQueryKit.java
b/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/scan/ScanQueryKit.java
index 418f0dce666..6382d63f7cd 100644
---
a/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/scan/ScanQueryKit.java
+++
b/multi-stage-query/src/main/java/org/apache/druid/msq/querykit/scan/ScanQueryKit.java
@@ -19,7 +19,6 @@
package org.apache.druid.msq.querykit.scan;
-import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.druid.frame.key.ClusterBy;
import org.apache.druid.frame.key.KeyColumn;
@@ -43,7 +42,6 @@ import org.apache.druid.query.OrderBy;
import org.apache.druid.query.scan.ScanQuery;
import org.apache.druid.segment.column.ColumnType;
import org.apache.druid.segment.column.RowSignature;
-import org.apache.druid.sql.calcite.rel.DruidQuery;
import java.util.ArrayList;
import java.util.List;
@@ -59,18 +57,7 @@ public class ScanQueryKit implements QueryKit<ScanQuery>
public static RowSignature getAndValidateSignature(final ScanQuery
scanQuery, final ObjectMapper jsonMapper)
{
- RowSignature scanSignature;
- try {
- final String s =
scanQuery.context().getString(DruidQuery.CTX_SCAN_SIGNATURE);
- if (s == null) {
- scanSignature = scanQuery.getRowSignature();
- } else {
- scanSignature = jsonMapper.readValue(s, RowSignature.class);
- }
- }
- catch (JsonProcessingException e) {
- throw new RuntimeException(e);
- }
+ RowSignature scanSignature = scanQuery.getRowSignature();
// Verify the signature prior to any actual processing.
QueryKitUtils.verifyRowSignature(scanSignature);
return scanSignature;
diff --git
a/multi-stage-query/src/main/java/org/apache/druid/msq/sql/MSQTaskSqlEngine.java
b/multi-stage-query/src/main/java/org/apache/druid/msq/sql/MSQTaskSqlEngine.java
index 1f1d0b1334f..9e96eb7dd7d 100644
---
a/multi-stage-query/src/main/java/org/apache/druid/msq/sql/MSQTaskSqlEngine.java
+++
b/multi-stage-query/src/main/java/org/apache/druid/msq/sql/MSQTaskSqlEngine.java
@@ -168,7 +168,6 @@ public class MSQTaskSqlEngine implements SqlEngine
case READ_EXTERNAL_DATA:
case WRITE_EXTERNAL_DATA:
case SCAN_ORDER_BY_NON_TIME:
- case SCAN_NEEDS_SIGNATURE:
return true;
default:
throw
SqlEngines.generateUnrecognizedFeatureException(MSQTaskSqlEngine.class.getSimpleName(),
feature);
diff --git
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQArraysTest.java
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQArraysTest.java
index 5651fdfa386..824508f280c 100644
---
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQArraysTest.java
+++
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQArraysTest.java
@@ -762,7 +762,7 @@ public class MSQArraysTest extends MSQTestBase
ColumnType.LONG,
TestExprMacroTable.INSTANCE
))
- .context(defaultScanQueryContext(adjustedContext, scanSignature))
+ .context(adjustedContext)
.build();
testSelectQuery().setSql("SELECT\n"
@@ -838,7 +838,7 @@ public class MSQArraysTest extends MSQTestBase
.columns("arrayString")
.columnTypes(scanSignature.getColumnTypes())
.orderBy(Collections.singletonList(OrderBy.descending("arrayString")))
- .context(defaultScanQueryContext(context, scanSignature))
+ .context(context)
.build();
testSelectQuery().setSql("SELECT\n"
@@ -902,7 +902,7 @@ public class MSQArraysTest extends MSQTestBase
.columns("arrayLong")
.columnTypes(scanSignature.getColumnTypes())
.orderBy(Collections.singletonList(OrderBy.ascending("arrayLong")))
- .context(defaultScanQueryContext(context, scanSignature))
+ .context(context)
.build();
testSelectQuery().setSql("SELECT\n"
@@ -966,7 +966,7 @@ public class MSQArraysTest extends MSQTestBase
.columns("arrayDouble")
.columnTypes(scanSignature.getColumnTypes())
.orderBy(Collections.singletonList(OrderBy.ascending("arrayDouble")))
- .context(defaultScanQueryContext(context, scanSignature))
+ .context(context)
.build();
testSelectQuery().setSql("SELECT\n"
@@ -1018,7 +1018,7 @@ public class MSQArraysTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("a_bool")
.columnTypes(scanSignature.getColumnTypes())
- .context(defaultScanQueryContext(context, scanSignature))
+ .context(context)
.build();
testSelectQuery().setSql("SELECT a_bool FROM TABLE(\n"
@@ -1067,7 +1067,7 @@ public class MSQArraysTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("a_bool")
.columnTypes(scanSignature.getColumnTypes())
- .context(defaultScanQueryContext(context, scanSignature))
+ .context(context)
.build();
testSelectQuery().setSql("SELECT a_bool FROM TABLE(\n"
diff --git
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQComplexGroupByTest.java
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQComplexGroupByTest.java
index 3c0dd86b7f6..274eb0027c4 100644
---
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQComplexGroupByTest.java
+++
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQComplexGroupByTest.java
@@ -420,7 +420,7 @@ public class MSQComplexGroupByTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("obj")
.columnTypes(ColumnType.NESTED_DATA)
-
.context(defaultScanQueryContext(context, rowSignature))
+ .context(context)
.orderBy(Collections.singletonList(OrderBy.ascending("obj")))
.build()
)
diff --git
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQLoadedSegmentTests.java
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQLoadedSegmentTests.java
index cb4a75d7b1c..130b4a9c615 100644
---
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQLoadedSegmentTests.java
+++
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQLoadedSegmentTests.java
@@ -131,7 +131,7 @@ public class MSQLoadedSegmentTests extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("cnt", "dim1")
.columnTypes(resultSignature.getColumnTypes())
-
.context(defaultScanQueryContext(REALTIME_QUERY_CTX, resultSignature))
+ .context(REALTIME_QUERY_CTX)
.build()
)
.columnMappings(ColumnMappings.identity(resultSignature))
@@ -198,7 +198,7 @@ public class MSQLoadedSegmentTests extends MSQTestBase
.columns("cnt", "dim1")
.columnTypes(resultSignature.getColumnTypes())
.orderBy(ImmutableList.of(OrderBy.ascending("dim1")))
-
.context(defaultScanQueryContext(REALTIME_QUERY_CTX, resultSignature))
+ .context(REALTIME_QUERY_CTX)
.build()
)
.columnMappings(ColumnMappings.identity(resultSignature))
diff --git
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQParseExceptionsTest.java
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQParseExceptionsTest.java
index 778bf22c760..c46d6386415 100644
---
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQParseExceptionsTest.java
+++
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQParseExceptionsTest.java
@@ -182,13 +182,7 @@ public class MSQParseExceptionsTest extends MSQTestBase
.columns("v0", "v1")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(defaultScanQueryContext(
- context,
- RowSignature.builder()
- .add("v0", ColumnType.LONG)
- .add("v1", ColumnType.STRING)
- .build()
- ))
+ .context(context)
.build();
@@ -276,13 +270,7 @@ public class MSQParseExceptionsTest extends MSQTestBase
.columns("v0", "agent_category")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(defaultScanQueryContext(
- context,
- RowSignature.builder()
- .add("v0", ColumnType.LONG)
- .add("agent_category", ColumnType.STRING)
- .build()
- ))
+ .context(context)
.build();
diff --git
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQSelectTest.java
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQSelectTest.java
index e96127d0f44..bfdc0a4af92 100644
---
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQSelectTest.java
+++
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQSelectTest.java
@@ -169,7 +169,7 @@ public class MSQSelectTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("EXPR$0")
.columnTypes(ColumnType.LONG)
- .context(defaultScanQueryContext(context,
resultSignature))
+ .context(context)
.build()
)
.columnMappings(ColumnMappings.identity(resultSignature))
@@ -203,7 +203,7 @@ public class MSQSelectTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("cnt", "dim1")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
- .context(defaultScanQueryContext(context,
resultSignature))
+ .context(context)
.build()
)
.columnMappings(ColumnMappings.identity(resultSignature))
@@ -262,13 +262,7 @@ public class MSQSelectTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("m1", "dim2")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
- .context(defaultScanQueryContext(
- context,
- RowSignature.builder()
- .add("m1", ColumnType.LONG)
- .add("dim2", ColumnType.STRING)
- .build()
- ))
+ .context(context)
.build())
.columnMappings(ColumnMappings.identity(resultSignature))
.tuningConfig(MSQTuningConfig.defaultConfig())
@@ -339,7 +333,7 @@ public class MSQSelectTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("cnt", "dim1")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
- .context(defaultScanQueryContext(context,
expectedScanSignature))
+ .context(context)
.build()
)
.columnMappings(expectedColumnMappings)
@@ -404,7 +398,7 @@ public class MSQSelectTest extends MSQTestBase
)
.columns("cnt", "dim1")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
- .context(defaultScanQueryContext(context,
resultSignature))
+ .context(context)
.build()
)
.columnMappings(ColumnMappings.identity(resultSignature))
@@ -447,7 +441,7 @@ public class MSQSelectTest extends MSQTestBase
)
.columns("cnt", "dim1")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
- .context(defaultScanQueryContext(context,
resultSignature))
+ .context(context)
.build()
)
.columnMappings(ColumnMappings.identity(resultSignature))
@@ -488,7 +482,7 @@ public class MSQSelectTest extends MSQTestBase
.columns("cnt", "dim1")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
.filters(equality("dim2", "nonexistent",
ColumnType.STRING))
- .context(defaultScanQueryContext(context,
resultSignature))
+ .context(context)
.build()
)
.columnMappings(ColumnMappings.identity(resultSignature))
@@ -524,7 +518,7 @@ public class MSQSelectTest extends MSQTestBase
.columns("cnt", "dim1")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
.filters(equality("dim2", "nonexistent",
ColumnType.STRING))
- .context(defaultScanQueryContext(context,
resultSignature))
+ .context(context)
.orderBy(ImmutableList.of(OrderBy.ascending("dim1")))
.build()
)
@@ -706,7 +700,7 @@ public class MSQSelectTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("cnt", "dim1")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
- .context(defaultScanQueryContext(context,
resultSignature))
+ .context(context)
.limit(10)
.build()
)
@@ -1099,16 +1093,7 @@ public class MSQSelectTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("dim2", "m1", "m2")
.columnTypes(ColumnType.STRING,
ColumnType.FLOAT, ColumnType.DOUBLE)
- .context(
- defaultScanQueryContext(
- queryContext,
- RowSignature.builder()
- .add("dim2",
ColumnType.STRING)
- .add("m1",
ColumnType.FLOAT)
- .add("m2",
ColumnType.DOUBLE)
- .build()
- )
- )
+ .context(queryContext)
.limit(10)
.build()
.withOverriddenContext(queryContext)
@@ -1120,12 +1105,7 @@ public class MSQSelectTest extends MSQTestBase
.columns("m1")
.columnTypes(ColumnType.FLOAT)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(
- defaultScanQueryContext(
- queryContext,
- RowSignature.builder().add("m1",
ColumnType.FLOAT).build()
- )
- )
+ .context(queryContext)
.build()
.withOverriddenContext(queryContext)
),
@@ -1574,13 +1554,7 @@ public class MSQSelectTest extends MSQTestBase
.columns("v0", "user")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
.filters(new LikeDimFilter("user", "%ot%", null,
null))
- .context(defaultScanQueryContext(
- multipleWorkerContext,
- RowSignature.builder()
- .add("v0", ColumnType.LONG)
- .add("user", ColumnType.STRING)
- .build()
- ))
+ .context(multipleWorkerContext)
.build();
SelectTester selectTester = testSelectQuery()
@@ -1767,13 +1741,7 @@ public class MSQSelectTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("m1", "dim2")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
- .context(defaultScanQueryContext(
- context,
- RowSignature.builder()
- .add("m1", ColumnType.LONG)
- .add("dim2", ColumnType.STRING)
- .build()
- ))
+ .context(context)
.build()
)
.columnMappings(ColumnMappings.identity(resultSignature))
@@ -1839,7 +1807,7 @@ public class MSQSelectTest extends MSQTestBase
)
.columns("dim3", "v0")
.columnTypes(ColumnType.STRING,
ColumnType.STRING_ARRAY)
-
.context(defaultScanQueryContext(context, expectedScanSignature))
+ .context(context)
.build())
.columnMappings(
new ColumnMappings(
@@ -2531,10 +2499,7 @@ public class MSQSelectTest extends MSQTestBase
.columns("v0")
.columnTypes(ColumnType.LONG)
.virtualColumns(new ExpressionVirtualColumn("v0",
ExprEval.of(1L).toExpr(), ColumnType.LONG))
- .context(defaultScanQueryContext(
- context,
- RowSignature.builder().add("v0",
ColumnType.LONG).build()
- ))
+ .context(context)
.build()
)
.columnMappings(new ColumnMappings(
@@ -2587,10 +2552,7 @@ public class MSQSelectTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("EXPR$0")
.columnTypes(ColumnType.LONG)
- .context(defaultScanQueryContext(
- context,
- resultSignature
- ))
+ .context(context)
.build())
.columnMappings(expectedColumnMappings)
.tuningConfig(MSQTuningConfig.defaultConfig())
@@ -2640,10 +2602,7 @@ public class MSQSelectTest extends MSQTestBase
))
.intervals(querySegmentSpec(Filtration.eternity()))
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(defaultScanQueryContext(
- context,
- resultSignature
- ))
+ .context(context)
.columns("j0.unnest")
.columnTypes(ColumnType.STRING)
.build())
@@ -2708,10 +2667,7 @@ public class MSQSelectTest extends MSQTestBase
.filters(equality("dim2", "a",
ColumnType.STRING))
.columns("dim3")
.columnTypes(ColumnType.STRING)
- .context(defaultScanQueryContext(
- context,
- resultSignature1
- ))
+ .context(context)
.limit(10)
.build()
),
@@ -2720,10 +2676,7 @@ public class MSQSelectTest extends MSQTestBase
))
.intervals(querySegmentSpec(Filtration.eternity()))
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(defaultScanQueryContext(
- context,
- resultSignature
- ))
+ .context(context)
.columns("j0.unnest")
.columnTypes(ColumnType.STRING)
.build())
@@ -2768,13 +2721,7 @@ public class MSQSelectTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("m1", "dim2")
.columnTypes(ColumnType.LONG,
ColumnType.STRING)
- .context(defaultScanQueryContext(
- timeoutContext,
- RowSignature.builder()
- .add("m1", ColumnType.LONG)
- .add("dim2",
ColumnType.STRING)
- .build()
- ))
+ .context(timeoutContext)
.build())
.columnMappings(ColumnMappings.identity(resultSignature))
.tuningConfig(MSQTuningConfig.defaultConfig())
@@ -2813,13 +2760,7 @@ public class MSQSelectTest extends MSQTestBase
.intervals(querySegmentSpec(Filtration.eternity()))
.columns("m1", "dim2")
.columnTypes(ColumnType.LONG,
ColumnType.STRING)
- .context(defaultScanQueryContext(
- context,
- RowSignature.builder()
- .add("m1", ColumnType.LONG)
- .add("dim2",
ColumnType.STRING)
- .build()
- ))
+ .context(context)
.build())
.columnMappings(ColumnMappings.identity(resultSignature))
.tuningConfig(MSQTuningConfig.defaultConfig())
@@ -2885,10 +2826,7 @@ public class MSQSelectTest extends MSQTestBase
))
.intervals(querySegmentSpec(Filtration.eternity()))
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(defaultScanQueryContext(
- context,
- rowSignature
- ))
+ .context(context)
.columns("__time", "dim1")
.columnTypes(ColumnType.LONG, ColumnType.STRING)
.build())
diff --git
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQWindowTest.java
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQWindowTest.java
index f6a305de801..b9057208552 100644
---
a/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQWindowTest.java
+++
b/multi-stage-query/src/test/java/org/apache/druid/msq/exec/MSQWindowTest.java
@@ -61,7 +61,6 @@ import
org.apache.druid.sql.calcite.expression.DruidExpression;
import org.apache.druid.sql.calcite.filtration.Filtration;
import org.apache.druid.sql.calcite.planner.ColumnMapping;
import org.apache.druid.sql.calcite.planner.ColumnMappings;
-import org.apache.druid.sql.calcite.rel.DruidQuery;
import org.apache.druid.sql.calcite.util.CalciteTests;
import org.apache.druid.timeline.SegmentId;
import org.hamcrest.CoreMatchers;
@@ -578,12 +577,6 @@ public class MSQWindowTest extends MSQTestBase
};
WindowFramedAggregateProcessor proc = new
WindowFramedAggregateProcessor(theFrame, theAggs);
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(DruidQuery.CTX_SCAN_SIGNATURE,
"[{\"name\":\"m1\",\"type\":\"FLOAT\"}]")
- .build();
-
final WindowOperatorQuery query = new WindowOperatorQuery(
new QueryDataSource(
newScanQueryBuilder()
@@ -592,7 +585,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("m1")
.columnTypes(ColumnType.FLOAT)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -643,15 +636,6 @@ public class MSQWindowTest extends MSQTestBase
};
WindowFramedAggregateProcessor proc = new
WindowFramedAggregateProcessor(theFrame, theAggs);
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"m1\",\"type\":\"FLOAT\"},{\"name\":\"m2\",\"type\":\"DOUBLE\"}]"
- )
- .build();
-
final WindowOperatorQuery query = new WindowOperatorQuery(
new QueryDataSource(
newScanQueryBuilder()
@@ -660,7 +644,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("m1", "m2")
.columnTypes(ColumnType.FLOAT, ColumnType.DOUBLE)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -714,15 +698,6 @@ public class MSQWindowTest extends MSQTestBase
};
WindowFramedAggregateProcessor proc = new
WindowFramedAggregateProcessor(theFrame, theAggs);
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"m1\",\"type\":\"FLOAT\"},{\"name\":\"m2\",\"type\":\"DOUBLE\"}]"
- )
- .build();
-
final WindowOperatorQuery query = new WindowOperatorQuery(
new QueryDataSource(
newScanQueryBuilder()
@@ -731,7 +706,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("m1", "m2")
.columnTypes(ColumnType.FLOAT, ColumnType.DOUBLE)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -845,15 +820,6 @@ public class MSQWindowTest extends MSQTestBase
@Test
public void testWindowOnFooWithNoGroupByAndPartitionAndVirtualColumns()
{
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"m1\",\"type\":\"FLOAT\"},{\"name\":\"v0\",\"type\":\"LONG\"}]"
- )
- .build();
-
RowSignature rowSignature = RowSignature.builder()
.add("ld", ColumnType.LONG)
.add("m1", ColumnType.FLOAT)
@@ -875,7 +841,7 @@ public class MSQWindowTest extends MSQTestBase
.columnTypes(ColumnType.FLOAT, ColumnType.LONG)
.virtualColumns(expressionVirtualColumn("v0",
"strlen(\"dim1\")", ColumnType.LONG))
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -921,13 +887,6 @@ public class MSQWindowTest extends MSQTestBase
@Test
public void testWindowOnFooWithNoGroupByAndEmptyOver()
{
-
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(DruidQuery.CTX_SCAN_SIGNATURE,
"[{\"name\":\"m1\",\"type\":\"FLOAT\"}]")
- .build();
-
RowSignature rowSignature = RowSignature.builder()
.add("m1", ColumnType.FLOAT)
.add("cc", ColumnType.DOUBLE)
@@ -947,7 +906,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("m1")
.columnTypes(ColumnType.FLOAT)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -986,24 +945,6 @@ public class MSQWindowTest extends MSQTestBase
@Test
public void testWindowOnFooWithPartitionByOrderBYWithJoin()
{
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"m1\",\"type\":\"FLOAT\"},{\"name\":\"j0.m2\",\"type\":\"DOUBLE\"}]"
- )
- .build();
-
- final Map<String, Object> contextWithRowSignature1 =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"m2\",\"type\":\"DOUBLE\"},{\"name\":\"v0\",\"type\":\"FLOAT\"}]"
- )
- .build();
-
RowSignature rowSignature = RowSignature.builder()
.add("m1", ColumnType.FLOAT)
.add("cc", ColumnType.DOUBLE)
@@ -1030,7 +971,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("m2", "v0")
.columnTypes(ColumnType.DOUBLE,
ColumnType.FLOAT)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature1)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()
),
"j0.",
@@ -1045,7 +986,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("m1", "j0.m2")
.columnTypes(ColumnType.FLOAT, ColumnType.DOUBLE)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -1091,24 +1032,6 @@ public class MSQWindowTest extends MSQTestBase
@Test
public void testWindowOnFooWithEmptyOverWithJoin()
{
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"m1\",\"type\":\"FLOAT\"},{\"name\":\"j0.m2\",\"type\":\"DOUBLE\"}]"
- )
- .build();
-
- final Map<String, Object> contextWithRowSignature1 =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"m2\",\"type\":\"DOUBLE\"},{\"name\":\"v0\",\"type\":\"FLOAT\"}]"
- )
- .build();
-
RowSignature rowSignature = RowSignature.builder()
.add("m1", ColumnType.FLOAT)
.add("cc", ColumnType.DOUBLE)
@@ -1135,7 +1058,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("m2", "v0")
.columnTypes(ColumnType.DOUBLE,
ColumnType.FLOAT)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature1)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()
),
"j0.",
@@ -1150,7 +1073,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("m1", "j0.m2")
.columnTypes(ColumnType.FLOAT, ColumnType.DOUBLE)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -1206,15 +1129,6 @@ public class MSQWindowTest extends MSQTestBase
};
WindowFramedAggregateProcessor proc = new
WindowFramedAggregateProcessor(theFrame, theAggs);
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"dim2\",\"type\":\"STRING\"},{\"name\":\"m1\",\"type\":\"FLOAT\"}]"
- )
- .build();
-
final WindowOperatorQuery query = new WindowOperatorQuery(
new QueryDataSource(
newScanQueryBuilder()
@@ -1223,7 +1137,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("dim2", "m1")
.columnTypes(ColumnType.STRING, ColumnType.FLOAT)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -1264,16 +1178,6 @@ public class MSQWindowTest extends MSQTestBase
@Test
public void testWindowOnFooWithEmptyOverWithUnnest()
{
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"m1\",\"type\":\"FLOAT\"},{\"name\":\"j0.unnest\",\"type\":\"STRING\"}]"
- )
- .build();
-
-
RowSignature rowSignature = RowSignature.builder()
.add("m1", ColumnType.FLOAT)
.add("cc", ColumnType.DOUBLE)
@@ -1300,7 +1204,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("m1", "j0.unnest")
.columnTypes(ColumnType.FLOAT, ColumnType.STRING)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -1347,16 +1251,6 @@ public class MSQWindowTest extends MSQTestBase
@Test
public void testWindowOnFooWithPartitionByAndWithUnnest()
{
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"m1\",\"type\":\"FLOAT\"},{\"name\":\"j0.unnest\",\"type\":\"STRING\"}]"
- )
- .build();
-
-
RowSignature rowSignature = RowSignature.builder()
.add("m1", ColumnType.FLOAT)
.add("cc", ColumnType.DOUBLE)
@@ -1383,7 +1277,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("m1", "j0.unnest")
.columnTypes(ColumnType.FLOAT, ColumnType.STRING)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -1737,15 +1631,6 @@ public class MSQWindowTest extends MSQTestBase
};
WindowFramedAggregateProcessor proc = new
WindowFramedAggregateProcessor(theFrame, theAggs);
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"cityName\",\"type\":\"STRING\"},{\"name\":\"added\",\"type\":\"LONG\"}]"
- )
- .build();
-
final WindowOperatorQuery query = new WindowOperatorQuery(
new QueryDataSource(
newScanQueryBuilder()
@@ -1755,7 +1640,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("cityName", "added")
.columnTypes(ColumnType.STRING, ColumnType.LONG)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -1827,15 +1712,6 @@ public class MSQWindowTest extends MSQTestBase
};
WindowFramedAggregateProcessor proc = new
WindowFramedAggregateProcessor(theFrame, theAggs);
- final Map<String, Object> innerContextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"cityName\",\"type\":\"STRING\"},{\"name\":\"countryIsoCode\",\"type\":\"STRING\"},{\"name\":\"added\",\"type\":\"LONG\"}]"
- )
- .build();
-
final WindowOperatorQuery query = new WindowOperatorQuery(
new QueryDataSource(
newScanQueryBuilder()
@@ -1845,7 +1721,7 @@ public class MSQWindowTest extends MSQTestBase
.columns("cityName", "countryIsoCode", "added")
.columnTypes(ColumnType.STRING, ColumnType.STRING,
ColumnType.LONG)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(innerContextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build()),
new LegacySegmentSpec(Intervals.ETERNITY),
DEFAULT_MSQ_CONTEXT,
@@ -1860,14 +1736,6 @@ public class MSQWindowTest extends MSQTestBase
ImmutableList.of()
);
- final Map<String, Object> outerContextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(DEFAULT_MSQ_CONTEXT)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"cityName\",\"type\":\"STRING\"},{\"name\":\"added\",\"type\":\"LONG\"},{\"name\":\"w0\",\"type\":\"LONG\"}]"
- )
- .build();
final Query scanQuery = Druids.newScanQueryBuilder()
.dataSource(new QueryDataSource(query))
.intervals(querySegmentSpec(Filtration.eternity()))
@@ -1875,7 +1743,7 @@ public class MSQWindowTest extends MSQTestBase
.columnTypes(ColumnType.STRING,
ColumnType.LONG, ColumnType.LONG)
.limit(5)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(outerContextWithRowSignature)
+ .context(DEFAULT_MSQ_CONTEXT)
.build();
testSelectQuery()
@@ -2028,15 +1896,6 @@ public class MSQWindowTest extends MSQTestBase
.add("c2", ColumnType.LONG)
.build();
- final Map<String, Object> contextWithRowSignature =
- ImmutableMap.<String, Object>builder()
- .putAll(multipleWorkerContext)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
"[{\"name\":\"d0\",\"type\":\"STRING\"},{\"name\":\"d1\",\"type\":\"STRING\"},{\"name\":\"d2\",\"type\":\"STRING\"},{\"name\":\"w0\",\"type\":\"LONG\"},{\"name\":\"w1\",\"type\":\"LONG\"}]"
- )
- .build();
-
final GroupByQuery groupByQuery = GroupByQuery.builder()
.setDataSource(CalciteTests.WIKIPEDIA)
.setInterval(querySegmentSpec(Filtration
@@ -2103,7 +1962,7 @@ public class MSQWindowTest extends MSQTestBase
.columnTypes(ColumnType.STRING,
ColumnType.STRING, ColumnType.STRING, ColumnType.LONG, ColumnType.LONG)
.limit(Long.MAX_VALUE)
.resultFormat(ScanQuery.ResultFormat.RESULT_FORMAT_COMPACTED_LIST)
- .context(contextWithRowSignature)
+ .context(multipleWorkerContext)
.build();
final String sql = "select countryName, cityName, channel, \n"
diff --git
a/multi-stage-query/src/test/java/org/apache/druid/msq/sql/resources/SqlMSQStatementResourcePostTest.java
b/multi-stage-query/src/test/java/org/apache/druid/msq/sql/resources/SqlMSQStatementResourcePostTest.java
index 4784dfea377..73502be0b81 100644
---
a/multi-stage-query/src/test/java/org/apache/druid/msq/sql/resources/SqlMSQStatementResourcePostTest.java
+++
b/multi-stage-query/src/test/java/org/apache/druid/msq/sql/resources/SqlMSQStatementResourcePostTest.java
@@ -303,7 +303,7 @@ public class SqlMSQStatementResourcePostTest extends
MSQTestBase
), SqlStatementResourceTest.makeOkRequest());
Assert.assertEquals(
-
"{PLAN=[{\"query\":{\"queryType\":\"scan\",\"dataSource\":{\"type\":\"table\",\"name\":\"foo\"},\"intervals\":{\"type\":\"intervals\",\"intervals\":[\"-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z\"]},\"resultFormat\":\"compactedList\",\"columns\":[\"__time\",\"dim1\",\"dim2\",\"dim3\",\"cnt\",\"m1\",\"m2\",\"unique_dim1\"],\"context\":{\"__resultFormat\":\"object\",\"debug\":\"false\",\"executionMode\":\"ASYNC\",\"scanSignature\":\"[{\\\"name\\\":\\\"__time\\\",\\
[...]
+
"{PLAN=[{\"query\":{\"queryType\":\"scan\",\"dataSource\":{\"type\":\"table\",\"name\":\"foo\"},\"intervals\":{\"type\":\"intervals\",\"intervals\":[\"-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z\"]},\"resultFormat\":\"compactedList\",\"columns\":[\"__time\",\"dim1\",\"dim2\",\"dim3\",\"cnt\",\"m1\",\"m2\",\"unique_dim1\"],\"context\":{\"__resultFormat\":\"object\",\"debug\":\"false\",\"executionMode\":\"ASYNC\",\"sqlQueryId\":\"queryId\"},\"columnTypes\":[\"LONG\
[...]
String.valueOf(SqlStatementResourceTest.getResultRowsFromResponse(response).get(0))
);
}
diff --git
a/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestBase.java
b/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestBase.java
index 4254250b500..8e6e38bb39b 100644
--- a/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestBase.java
+++ b/multi-stage-query/src/test/java/org/apache/druid/msq/test/MSQTestBase.java
@@ -185,7 +185,6 @@ import
org.apache.druid.sql.calcite.planner.CalciteRulesManager;
import org.apache.druid.sql.calcite.planner.CatalogResolver;
import org.apache.druid.sql.calcite.planner.PlannerConfig;
import org.apache.druid.sql.calcite.planner.PlannerFactory;
-import org.apache.druid.sql.calcite.rel.DruidQuery;
import org.apache.druid.sql.calcite.run.SqlEngine;
import org.apache.druid.sql.calcite.schema.DruidSchemaCatalog;
import org.apache.druid.sql.calcite.schema.NoopDruidSchemaManager;
@@ -651,26 +650,6 @@ public class MSQTestBase extends BaseCalciteQueryTest
return CatalogResolver.NULL_RESOLVER;
}
- /**
- * Returns query context expected for a scan query. Same as {@link
#DEFAULT_MSQ_CONTEXT}, but
- * includes {@link DruidQuery#CTX_SCAN_SIGNATURE}.
- */
- protected Map<String, Object> defaultScanQueryContext(Map<String, Object>
context, final RowSignature signature)
- {
- try {
- return ImmutableMap.<String, Object>builder()
- .putAll(context)
- .put(
- DruidQuery.CTX_SCAN_SIGNATURE,
-
queryFramework().queryJsonMapper().writeValueAsString(signature)
- )
- .build();
- }
- catch (JsonProcessingException e) {
- throw new RuntimeException(e);
- }
- }
-
/**
* Creates an array of length and containing values decided by the
parameters.
*/
diff --git
a/multi-stage-query/src/test/quidem/org.apache.druid.msq.quidem.MSQQuidemTest/msqJoinHint.iq
b/multi-stage-query/src/test/quidem/org.apache.druid.msq.quidem.MSQQuidemTest/msqJoinHint.iq
index 7c347b59d49..3dfead41f01 100644
---
a/multi-stage-query/src/test/quidem/org.apache.druid.msq.quidem.MSQQuidemTest/msqJoinHint.iq
+++
b/multi-stage-query/src/test/quidem/org.apache.druid.msq.quidem.MSQQuidemTest/msqJoinHint.iq
@@ -43,7 +43,6 @@ where w1.cityName='New York';
},
"columns" : [ "cityName" ],
"context" : {
- "scanSignature" : "[{\"name\":\"cityName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -106,7 +105,6 @@ where w1.cityName='New York';
"resultFormat" : "compactedList",
"columns" : [ "cityName", "countryName" ],
"context" : {
- "scanSignature" :
"[{\"name\":\"cityName\",\"type\":\"STRING\"},{\"name\":\"countryName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -195,7 +193,6 @@ where w1.cityName='New York';
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"v0\",\"type\":\"STRING\"},{\"name\":\"j0.countryName\",\"type\":\"STRING\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -287,7 +284,6 @@ LogicalJoin:[[broadcast inheritPath:[0, 0]]]
},
"columns" : [ "cityName" ],
"context" : {
- "scanSignature" : "[{\"name\":\"cityName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -350,7 +346,6 @@ LogicalJoin:[[broadcast inheritPath:[0, 0]]]
"resultFormat" : "compactedList",
"columns" : [ "cityName", "countryName" ],
"context" : {
- "scanSignature" :
"[{\"name\":\"cityName\",\"type\":\"STRING\"},{\"name\":\"countryName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -439,7 +434,6 @@ LogicalJoin:[[broadcast inheritPath:[0, 0]]]
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"v0\",\"type\":\"STRING\"},{\"name\":\"j0.countryName\",\"type\":\"STRING\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -532,7 +526,6 @@ LogicalJoin:[[sort_merge inheritPath:[0, 0]]]
},
"columns" : [ "cityName" ],
"context" : {
- "scanSignature" : "[{\"name\":\"cityName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -595,7 +588,6 @@ LogicalJoin:[[sort_merge inheritPath:[0, 0]]]
"resultFormat" : "compactedList",
"columns" : [ "cityName", "countryName" ],
"context" : {
- "scanSignature" :
"[{\"name\":\"cityName\",\"type\":\"STRING\"},{\"name\":\"countryName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -711,7 +703,6 @@ LogicalJoin:[[sort_merge inheritPath:[0, 0]]]
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"v0\",\"type\":\"STRING\"},{\"name\":\"j0.countryName\",\"type\":\"STRING\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/multi-stage-query/src/test/quidem/org.apache.druid.msq.quidem.MSQQuidemTest/msqNestedJoinHint.iq
b/multi-stage-query/src/test/quidem/org.apache.druid.msq.quidem.MSQQuidemTest/msqNestedJoinHint.iq
index 221f7db0fad..617ae774dc2 100644
---
a/multi-stage-query/src/test/quidem/org.apache.druid.msq.quidem.MSQQuidemTest/msqNestedJoinHint.iq
+++
b/multi-stage-query/src/test/quidem/org.apache.druid.msq.quidem.MSQQuidemTest/msqNestedJoinHint.iq
@@ -33,7 +33,6 @@ where w1.cityName='New York';
"resultFormat" : "compactedList",
"columns" : [ "regionName" ],
"context" : {
- "scanSignature" : "[{\"name\":\"regionName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -96,7 +95,6 @@ where w1.cityName='New York';
"resultFormat" : "compactedList",
"columns" : [ "cityName", "countryName" ],
"context" : {
- "scanSignature" :
"[{\"name\":\"cityName\",\"type\":\"STRING\"},{\"name\":\"countryName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -212,7 +210,6 @@ where w1.cityName='New York';
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"v0\",\"type\":\"STRING\"},{\"name\":\"_j0.countryName\",\"type\":\"STRING\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -294,7 +291,6 @@ LogicalJoin:[[sort_merge inheritPath:[0]]]
"resultFormat" : "compactedList",
"columns" : [ "cityName", "regionName" ],
"context" : {
- "scanSignature" :
"[{\"name\":\"cityName\",\"type\":\"STRING\"},{\"name\":\"regionName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -360,7 +356,6 @@ LogicalJoin:[[sort_merge inheritPath:[0]]]
"resultFormat" : "compactedList",
"columns" : [ "regionName" ],
"context" : {
- "scanSignature" : "[{\"name\":\"regionName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -423,7 +418,6 @@ LogicalJoin:[[sort_merge inheritPath:[0]]]
"resultFormat" : "compactedList",
"columns" : [ "cityName", "countryName" ],
"context" : {
- "scanSignature" :
"[{\"name\":\"cityName\",\"type\":\"STRING\"},{\"name\":\"countryName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -532,7 +526,6 @@ LogicalJoin:[[sort_merge inheritPath:[0]]]
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"v0\",\"type\":\"STRING\"},{\"name\":\"_j0.countryName\",\"type\":\"STRING\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -610,7 +603,6 @@ where w1.cityName='New York';
"resultFormat" : "compactedList",
"columns" : [ "regionName" ],
"context" : {
- "scanSignature" : "[{\"name\":\"regionName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -687,7 +679,6 @@ where w1.cityName='New York';
"resultFormat" : "compactedList",
"columns" : [ "cityName" ],
"context" : {
- "scanSignature" : "[{\"name\":\"cityName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -750,7 +741,6 @@ where w1.cityName='New York';
"resultFormat" : "compactedList",
"columns" : [ "cityName", "countryName" ],
"context" : {
- "scanSignature" :
"[{\"name\":\"cityName\",\"type\":\"STRING\"},{\"name\":\"countryName\",\"type\":\"STRING\"}]",
"sqlInsertSegmentGranularity" : null,
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false
@@ -872,7 +862,6 @@ where w1.cityName='New York';
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"v0\",\"type\":\"STRING\"},{\"name\":\"_j0.countryName\",\"type\":\"STRING\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/ops_funcs_mv_funcs.02.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/ops_funcs_mv_funcs.02.msq.iq
index b171eca42a4..a77d80d7857 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/ops_funcs_mv_funcs.02.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/ops_funcs_mv_funcs.02.msq.iq
@@ -391,10 +391,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
@@ -408,10 +408,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
@@ -425,10 +425,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
@@ -442,10 +442,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
@@ -459,10 +459,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
@@ -476,10 +476,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
@@ -790,10 +790,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
@@ -807,10 +807,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
@@ -824,10 +824,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/ops_funcs_mv_funcs.03.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/ops_funcs_mv_funcs.03.msq.iq
index 69b55ee0f36..82f9467f033 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/ops_funcs_mv_funcs.03.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/ops_funcs_mv_funcs.03.msq.iq
@@ -9,10 +9,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
@@ -26,10 +26,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
@@ -43,10 +43,10 @@ FROM test_array;
+-----+
| col |
+-----+
-| 1 |
-| 1 |
| |
| |
+| 1 |
+| 1 |
+-----+
(4 rows)
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/sql_explain.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/sql_explain.msq.iq
index f12cf1a8d2d..01f31cb3308 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/sql_explain.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaArray/sql_explain.msq.iq
@@ -61,7 +61,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"a_bool\",\"type\":\"ARRAY<LONG>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -151,7 +150,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"a_int\",\"type\":\"ARRAY<LONG>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -252,7 +250,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<LONG>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -356,7 +353,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<LONG>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -446,7 +442,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"a_float\",\"type\":\"ARRAY<DOUBLE>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -547,7 +542,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<DOUBLE>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -651,7 +645,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<DOUBLE>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -741,7 +734,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"a_str\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -842,7 +834,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -946,7 +937,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -1036,7 +1026,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"a_null\",\"type\":\"ARRAY<LONG>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -1137,7 +1126,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -1241,7 +1229,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -1331,7 +1318,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"a_empty\",\"type\":\"ARRAY<LONG>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -1432,7 +1418,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -1536,7 +1521,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -1626,7 +1610,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"a_mixed\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -1727,7 +1710,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -1831,7 +1813,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -1921,7 +1902,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"a_nested\",\"type\":\"COMPLEX<json>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -2022,7 +2002,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -2126,7 +2105,6 @@ FROM test_array;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_keys.03.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_keys.03.msq.iq
index 6b63f070175..788359f319f 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_keys.03.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_keys.03.msq.iq
@@ -684,7 +684,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -780,7 +779,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -876,7 +874,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_object.03.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_object.03.msq.iq
index 01e00169169..4f2bf8b90c8 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_object.03.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_object.03.msq.iq
@@ -678,7 +678,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"COMPLEX<json>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -774,7 +773,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"COMPLEX<json>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_paths.03.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_paths.03.msq.iq
index 82a34f198d5..66d3f32bdd4 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_paths.03.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_paths.03.msq.iq
@@ -53,7 +53,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"ARRAY<STRING>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_query.04.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_query.04.msq.iq
index e31f525107e..c9c6164297e 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_query.04.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_query.04.msq.iq
@@ -620,7 +620,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"COMPLEX<json>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -724,7 +723,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"COMPLEX<json>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -828,7 +826,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"COMPLEX<json>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.03.dart.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.03.dart.iq
index 4fcc0ef0d18..d5d2ee57da5 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.03.dart.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.03.dart.iq
@@ -533,14 +533,14 @@ FROM test_json_cols;
#-------------------------------------------------------------------------
SELECT json_value(c1, '$.a_bool' RETURNING boolean) c
FROM test_json_cols;
-+-------+
-| c |
-+-------+
-| false |
-| false |
-| |
-| |
-+-------+
++------+
+| c |
++------+
+| true |
+| true |
+| |
+| |
++------+
(4 rows)
!ok
@@ -550,14 +550,14 @@ FROM test_json_cols;
#-------------------------------------------------------------------------
SELECT json_value(c1, '$.a_obj.a_bool' RETURNING boolean) c
FROM test_json_cols;
-+-------+
-| c |
-+-------+
-| false |
-| false |
-| |
-| |
-+-------+
++------+
+| c |
++------+
+| true |
+| true |
+| |
+| |
++------+
(4 rows)
!ok
@@ -567,14 +567,14 @@ FROM test_json_cols;
#-------------------------------------------------------------------------
SELECT json_value(c1, '$.a_array[0].a_bool' RETURNING boolean) c
FROM test_json_cols;
-+-------+
-| c |
-+-------+
-| false |
-| false |
-| |
-| |
-+-------+
++------+
+| c |
++------+
+| true |
+| true |
+| |
+| |
++------+
(4 rows)
!ok
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.03.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.03.msq.iq
index 2b653c19055..50a21696f44 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.03.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.03.msq.iq
@@ -533,14 +533,14 @@ FROM test_json_cols;
#-------------------------------------------------------------------------
SELECT json_value(c1, '$.a_bool' RETURNING boolean) c
FROM test_json_cols;
-+-------+
-| c |
-+-------+
-| false |
-| false |
-| |
-| |
-+-------+
++------+
+| c |
++------+
+| true |
+| true |
+| |
+| |
++------+
(4 rows)
!ok
@@ -550,14 +550,14 @@ FROM test_json_cols;
#-------------------------------------------------------------------------
SELECT json_value(c1, '$.a_obj.a_bool' RETURNING boolean) c
FROM test_json_cols;
-+-------+
-| c |
-+-------+
-| false |
-| false |
-| |
-| |
-+-------+
++------+
+| c |
++------+
+| true |
+| true |
+| |
+| |
++------+
(4 rows)
!ok
@@ -567,14 +567,14 @@ FROM test_json_cols;
#-------------------------------------------------------------------------
SELECT json_value(c1, '$.a_array[0].a_bool' RETURNING boolean) c
FROM test_json_cols;
-+-------+
-| c |
-+-------+
-| false |
-| false |
-| |
-| |
-+-------+
++------+
+| c |
++------+
+| true |
+| true |
+| |
+| |
++------+
(4 rows)
!ok
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.04.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.04.msq.iq
index 26b7f2afec4..5c52e4ca727 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.04.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_json_value.04.msq.iq
@@ -375,7 +375,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"STRING\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_parse_json.02.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_parse_json.02.msq.iq
index c78001c265b..8f85301bfb4 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_parse_json.02.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_parse_json.02.msq.iq
@@ -114,7 +114,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"COMPLEX<json>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_to_json_string.02.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_to_json_string.02.msq.iq
index 706f7f588a1..996b5e93d14 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_to_json_string.02.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_to_json_string.02.msq.iq
@@ -195,7 +195,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"STRING\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_try_parse_json.02.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_try_parse_json.02.msq.iq
index 745f7f36f23..71d7cf0e5a5 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_try_parse_json.02.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaJsonCols/funcs_and_sql_func_try_parse_json.02.msq.iq
@@ -157,7 +157,6 @@ FROM test_json_cols;
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"v0\",\"type\":\"COMPLEX<json>\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest/array_sql_explain.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest/array_sql_explain.msq.iq
index 2b75c767ea1..7ecb7c0bda2 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest/array_sql_explain.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest/array_sql_explain.msq.iq
@@ -79,7 +79,6 @@ FROM test_unnest,
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"j0.unnest\",\"type\":\"LONG\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -187,7 +186,6 @@ FROM
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"__time\",\"type\":\"LONG\"},{\"name\":\"s_int\",\"type\":\"LONG\"},{\"name\":\"s_null\",\"type\":\"STRING\"},{\"name\":\"a_bool\",\"type\":\"ARRAY<LONG>\"},{\"name\":\"a_int\",\"type\":\"ARRAY<LONG>\"},{\"name\":\"a_float\",\"type\":\"ARRAY<DOUBLE>\"},{\"name\":\"a_str\",\"type\":\"ARRAY<STRING>\"},{\"name\":\"a_null\",\"type\":\"ARRAY<LONG>\"},{\"name\":\"a_empty\",\"type\":\"ARRAY<LONG>\"},{\"name\":\"a_mixed\",\"type\":\"ARRAY<STRING>\"},{\"na
[...]
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest/mv_sql_explain.msq.iq
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest/mv_sql_explain.msq.iq
index 18449467c88..4d322ee76c3 100644
---
a/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest/mv_sql_explain.msq.iq
+++
b/quidem-ut/src/test/quidem/org.apache.druid.quidem.QTest/qaUnnest/mv_sql_explain.msq.iq
@@ -97,7 +97,6 @@ FROM test_unnest,
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" : "[{\"name\":\"j0.unnest\",\"type\":\"STRING\"}]",
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
@@ -221,7 +220,6 @@ FROM
"finalize" : true,
"maxParseExceptions" : 0,
"rowBasedFrameType" : 19,
- "scanSignature" :
"[{\"name\":\"__time\",\"type\":\"LONG\"},{\"name\":\"c_str\",\"type\":\"STRING\"},{\"name\":\"c_long\",\"type\":\"LONG\"},{\"name\":\"c_float\",\"type\":\"FLOAT\"},{\"name\":\"c_double\",\"type\":\"DOUBLE\"},{\"name\":\"c_mv_complex\",\"type\":\"STRING\"},{\"name\":\"c_mv_num\",\"type\":\"STRING\"},{\"name\":\"c_mv_complex_with_null_and_empty_val\",\"type\":\"STRING\"},{\"name\":\"c_mv_num_with_null_and_empty_val\",\"type\":\"STRING\"},{\"name\":\"c_mv_comple
[...]
"sqlQueryId" : __SQL_QUERY_ID__
"sqlStringifyArrays" : false,
"startTime" : __TIMESTAMP__
diff --git a/sql/src/main/java/org/apache/druid/sql/calcite/rel/DruidQuery.java
b/sql/src/main/java/org/apache/druid/sql/calcite/rel/DruidQuery.java
index 6d1b9550d1c..5aaf1d80ef8 100644
--- a/sql/src/main/java/org/apache/druid/sql/calcite/rel/DruidQuery.java
+++ b/sql/src/main/java/org/apache/druid/sql/calcite/rel/DruidQuery.java
@@ -19,7 +19,6 @@
package org.apache.druid.sql.calcite.rel;
-import com.fasterxml.jackson.core.JsonProcessingException;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
@@ -88,7 +87,6 @@ import org.apache.druid.query.topn.TopNMetricSpec;
import org.apache.druid.query.topn.TopNQuery;
import org.apache.druid.segment.VirtualColumn;
import org.apache.druid.segment.VirtualColumns;
-import org.apache.druid.segment.column.ColumnCapabilities;
import org.apache.druid.segment.column.ColumnHolder;
import org.apache.druid.segment.column.ColumnType;
import org.apache.druid.segment.column.RowSignature;
@@ -126,14 +124,6 @@ import java.util.stream.Collectors;
*/
public class DruidQuery
{
- /**
- * Native query context key that is set when {@link
EngineFeature#SCAN_NEEDS_SIGNATURE}.
- *
- * {@link Deprecated} Instead of the context value {@link
ScanQuery#getRowSignature()} can be used.
- */
- @Deprecated
- public static final String CTX_SCAN_SIGNATURE = "scanSignature";
-
/**
* Maximum number of time-granular buckets that we allow for non-Druid
tables.
* <p>
@@ -1741,64 +1731,11 @@ public class DruidQuery
orderByColumns,
filtration.getDimFilter(),
scanColumnsList,
- withScanSignatureIfNeeded(
- virtualColumns,
- scanColumnsList,
- plannerContext.queryContextMap()
- ),
+ plannerContext.queryContextMap(),
outputRowSignature.buildSafeSignature(scanColumnsList).getColumnTypes()
);
}
- /**
- * Returns a copy of "queryContext" with {@link #CTX_SCAN_SIGNATURE} added
if the execution context has the
- * {@link EngineFeature#SCAN_NEEDS_SIGNATURE} feature.
- *
- * {@link Deprecated} Instead of the context value {@link
ScanQuery#getRowSignature()} can be used.
- */
- @Deprecated
- private Map<String, Object> withScanSignatureIfNeeded(
- final VirtualColumns virtualColumns,
- final List<String> scanColumns,
- final Map<String, Object> queryContext
- )
- {
- if (!plannerContext.featureAvailable(EngineFeature.SCAN_NEEDS_SIGNATURE)) {
- return queryContext;
- }
- final RowSignature signature = buildRowSignature(virtualColumns,
scanColumns);
-
- try {
- Map<String, Object> revised = new HashMap<>(queryContext);
- revised.put(
- CTX_SCAN_SIGNATURE,
- plannerContext.getJsonMapper().writeValueAsString(signature)
- );
- return revised;
- }
- catch (JsonProcessingException e) {
- throw new RuntimeException(e);
- }
- }
-
- private RowSignature buildRowSignature(final VirtualColumns virtualColumns,
final List<String> columns)
- {
- // Compute the signature of the columns that we are selecting.
- final RowSignature.Builder builder = RowSignature.builder();
-
- for (final String columnName : columns) {
- final ColumnCapabilities capabilities =
- virtualColumns.getColumnCapabilitiesWithFallback(sourceRowSignature,
columnName);
-
- if (capabilities == null) {
- // No type for this column. This is a planner bug.
- throw new ISE("No type for column [%s]", columnName);
- }
- builder.add(columnName, capabilities.toColumnType());
- }
- return builder.build();
- }
-
public DimFilter getFilter()
{
return filter;
diff --git
a/sql/src/main/java/org/apache/druid/sql/calcite/rel/VirtualColumnRegistry.java
b/sql/src/main/java/org/apache/druid/sql/calcite/rel/VirtualColumnRegistry.java
index 3503838d6fd..3734d2a6d42 100644
---
a/sql/src/main/java/org/apache/druid/sql/calcite/rel/VirtualColumnRegistry.java
+++
b/sql/src/main/java/org/apache/druid/sql/calcite/rel/VirtualColumnRegistry.java
@@ -41,7 +41,6 @@ import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Objects;
-import java.util.Optional;
import java.util.Queue;
import java.util.Set;
import java.util.stream.Collectors;
@@ -172,12 +171,6 @@ public class VirtualColumnRegistry
: expression.toVirtualColumn(virtualColumnName, columnType,
expressionParser);
}
- @Nullable
- public String getVirtualColumnByExpression(DruidExpression expression,
RelDataType typeHint)
- {
- return virtualColumnsByExpression.get(wrap(expression,
Calcites.getColumnTypeForRelDataType(typeHint)));
- }
-
/**
* Get a signature representing the base signature plus all registered
virtual columns.
*/
@@ -244,18 +237,6 @@ public class VirtualColumnRegistry
.collect(Collectors.toList());
}
- /**
- * @deprecated use {@link #findVirtualColumnExpressions(List)} instead
- */
- @Deprecated
- public List<VirtualColumn> findVirtualColumns(List<String> allColumns)
- {
- return allColumns.stream()
- .filter(this::isVirtualColumnDefined)
- .map(this::getVirtualColumn)
- .collect(Collectors.toList());
- }
-
/**
* @deprecated use {@link
#getOrCreateVirtualColumnForExpression(DruidExpression, ColumnType)} instead
*/
@@ -270,37 +251,6 @@ public class VirtualColumnRegistry
return getVirtualColumn(name);
}
- /**
- * @deprecated use {@link
#getOrCreateVirtualColumnForExpression(DruidExpression, RelDataType)} instead
- */
- @Deprecated
- public VirtualColumn getOrCreateVirtualColumnForExpression(
- PlannerContext plannerContext,
- DruidExpression expression,
- RelDataType dataType
- )
- {
- return getOrCreateVirtualColumnForExpression(
- plannerContext,
- expression,
- Calcites.getColumnTypeForRelDataType(dataType)
- );
- }
-
- /**
- * @deprecated use {@link #getVirtualColumnByExpression(DruidExpression,
RelDataType)} instead
- */
- @Deprecated
- @Nullable
- public VirtualColumn getVirtualColumnByExpression(String expression,
RelDataType type)
- {
- final ColumnType columnType = Calcites.getColumnTypeForRelDataType(type);
- ExpressionAndTypeHint wrapped =
wrap(DruidExpression.fromExpression(expression), columnType);
- return Optional.ofNullable(virtualColumnsByExpression.get(wrapped))
- .map(this::getVirtualColumn)
- .orElse(null);
- }
-
private static ExpressionAndTypeHint wrap(DruidExpression expression,
ColumnType typeHint)
{
return new ExpressionAndTypeHint(expression, typeHint);
diff --git
a/sql/src/main/java/org/apache/druid/sql/calcite/run/EngineFeature.java
b/sql/src/main/java/org/apache/druid/sql/calcite/run/EngineFeature.java
index 9bf4fac8e1e..aad9d2a71af 100644
--- a/sql/src/main/java/org/apache/druid/sql/calcite/run/EngineFeature.java
+++ b/sql/src/main/java/org/apache/druid/sql/calcite/run/EngineFeature.java
@@ -68,15 +68,6 @@ public enum EngineFeature
*/
SCAN_ORDER_BY_NON_TIME,
- /**
- * Scan queries must have {@link
org.apache.druid.sql.calcite.rel.DruidQuery#CTX_SCAN_SIGNATURE} set in their
- * query contexts.
- *
- * {@link Deprecated} Instead of the context value {@link
org.apache.druid.query.scan.ScanQuery#getRowSignature()} can be used.
- */
- @Deprecated
- SCAN_NEEDS_SIGNATURE,
-
/**
* Planner is permitted to use a {@link org.apache.calcite.runtime.Bindable}
plan on local resources, instead
* of {@link QueryMaker}, for SELECT query implementation. Used for system
tables and the like.
diff --git
a/sql/src/main/java/org/apache/druid/sql/calcite/run/NativeSqlEngine.java
b/sql/src/main/java/org/apache/druid/sql/calcite/run/NativeSqlEngine.java
index 1562da6d92c..997dcc3cbf1 100644
--- a/sql/src/main/java/org/apache/druid/sql/calcite/run/NativeSqlEngine.java
+++ b/sql/src/main/java/org/apache/druid/sql/calcite/run/NativeSqlEngine.java
@@ -39,7 +39,6 @@ import org.apache.druid.sql.SqlToolbox;
import org.apache.druid.sql.calcite.parser.DruidSqlInsert;
import org.apache.druid.sql.calcite.parser.DruidSqlReplace;
import org.apache.druid.sql.calcite.planner.PlannerContext;
-import org.apache.druid.sql.calcite.rel.DruidQuery;
import org.apache.druid.sql.destination.IngestDestination;
import java.util.Map;
@@ -57,7 +56,6 @@ public class NativeSqlEngine implements SqlEngine
GroupByQuery.CTX_TIMESTAMP_RESULT_FIELD,
GroupByQuery.CTX_TIMESTAMP_RESULT_FIELD_GRANULARITY,
GroupByQuery.CTX_TIMESTAMP_RESULT_FIELD_INDEX,
- DruidQuery.CTX_SCAN_SIGNATURE,
DruidSqlInsert.SQL_INSERT_SEGMENT_GRANULARITY,
DruidSqlReplace.SQL_REPLACE_TIME_CHUNKS
);
@@ -146,7 +144,6 @@ public class NativeSqlEngine implements SqlEngine
case READ_EXTERNAL_DATA:
case WRITE_EXTERNAL_DATA:
case SCAN_ORDER_BY_NON_TIME:
- case SCAN_NEEDS_SIGNATURE:
case WINDOW_LEAF_OPERATOR:
return false;
default:
diff --git
a/sql/src/main/java/org/apache/druid/sql/calcite/view/ViewSqlEngine.java
b/sql/src/main/java/org/apache/druid/sql/calcite/view/ViewSqlEngine.java
index 34064916655..5f9da88baea 100644
--- a/sql/src/main/java/org/apache/druid/sql/calcite/view/ViewSqlEngine.java
+++ b/sql/src/main/java/org/apache/druid/sql/calcite/view/ViewSqlEngine.java
@@ -78,7 +78,6 @@ public class ViewSqlEngine implements SqlEngine
case TOPN_QUERY:
case TIMESERIES_QUERY:
case TIME_BOUNDARY_QUERY:
- case SCAN_NEEDS_SIGNATURE:
case GROUPBY_IMPLICITLY_SORTS:
return false;
diff --git
a/sql/src/test/java/org/apache/druid/sql/calcite/CalciteScanSignatureTest.java
b/sql/src/test/java/org/apache/druid/sql/calcite/CalciteScanSignatureTest.java
index 2010c335480..20fb1d26d0e 100644
---
a/sql/src/test/java/org/apache/druid/sql/calcite/CalciteScanSignatureTest.java
+++
b/sql/src/test/java/org/apache/druid/sql/calcite/CalciteScanSignatureTest.java
@@ -20,25 +20,12 @@
package org.apache.druid.sql.calcite;
import com.google.common.collect.ImmutableList;
-import com.google.inject.Inject;
-import org.apache.calcite.rel.RelRoot;
-import org.apache.calcite.rel.type.RelDataType;
-import org.apache.calcite.rel.type.RelDataTypeFactory;
-import org.apache.calcite.tools.ValidationException;
import org.apache.druid.query.scan.ScanQuery;
import org.apache.druid.segment.column.ColumnType;
-import org.apache.druid.sql.SqlStatementFactory;
import
org.apache.druid.sql.calcite.CalciteScanSignatureTest.ScanSignatureComponentSupplier;
import org.apache.druid.sql.calcite.filtration.Filtration;
-import org.apache.druid.sql.calcite.planner.PlannerContext;
-import org.apache.druid.sql.calcite.rel.DruidQuery;
-import org.apache.druid.sql.calcite.run.EngineFeature;
-import org.apache.druid.sql.calcite.run.NativeSqlEngine;
-import org.apache.druid.sql.calcite.run.QueryMaker;
-import org.apache.druid.sql.calcite.run.SqlEngine;
import org.apache.druid.sql.calcite.util.CalciteTests;
import
org.apache.druid.sql.calcite.util.SqlTestFramework.StandardComponentSupplier;
-import org.apache.druid.sql.destination.IngestDestination;
import org.junit.jupiter.api.Test;
import java.util.HashMap;
@@ -51,7 +38,6 @@ public class CalciteScanSignatureTest extends
BaseCalciteQueryTest
public void testScanSignature()
{
final Map<String, Object> context = new HashMap<>(QUERY_CONTEXT_DEFAULT);
- context.put(DruidQuery.CTX_SCAN_SIGNATURE,
"[{\"name\":\"v0\",\"type\":\"STRING\"}]");
testQuery(
"SELECT CONCAT(dim1, '-', dim1, '_', dim1) as dimX FROM foo",
@@ -115,81 +101,5 @@ public class CalciteScanSignatureTest extends
BaseCalciteQueryTest
{
super(tempFolderProducer);
}
-
-
- @Override
- public Class<? extends SqlEngine> getSqlEngineClass()
- {
- return ScanSignatureTestSqlEngine.class;
- }
-
- // Create an engine that says yes to EngineFeature.SCAN_NEEDS_SIGNATURE.
- private static class ScanSignatureTestSqlEngine implements SqlEngine
- {
- private final SqlEngine parent;
-
- @Inject
- public ScanSignatureTestSqlEngine(final NativeSqlEngine parent)
- {
- this.parent = parent;
- }
-
- @Override
- public String name()
- {
- return getClass().getName();
- }
-
- @Override
- public boolean featureAvailable(EngineFeature feature)
- {
- return feature == EngineFeature.SCAN_NEEDS_SIGNATURE ||
parent.featureAvailable(feature);
- }
-
- @Override
- public void validateContext(Map<String, Object> queryContext)
- {
- // No validation.
- }
-
- @Override
- public RelDataType resultTypeForSelect(
- RelDataTypeFactory typeFactory,
- RelDataType validatedRowType,
- Map<String, Object> queryContext
- )
- {
- return validatedRowType;
- }
-
- @Override
- public RelDataType resultTypeForInsert(
- RelDataTypeFactory typeFactory,
- RelDataType validatedRowType,
- Map<String, Object> queryContext
- )
- {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public QueryMaker buildQueryMakerForSelect(RelRoot relRoot,
PlannerContext plannerContext)
- throws ValidationException
- {
- return parent.buildQueryMakerForSelect(relRoot, plannerContext);
- }
-
- @Override
- public QueryMaker buildQueryMakerForInsert(IngestDestination
destination, RelRoot relRoot, PlannerContext plannerContext)
- {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public SqlStatementFactory getSqlStatementFactory()
- {
- throw new UnsupportedOperationException();
- }
- }
}
}
diff --git
a/sql/src/test/java/org/apache/druid/sql/calcite/IngestionTestSqlEngine.java
b/sql/src/test/java/org/apache/druid/sql/calcite/IngestionTestSqlEngine.java
index f2b9a26239d..75d9b5164fc 100644
--- a/sql/src/test/java/org/apache/druid/sql/calcite/IngestionTestSqlEngine.java
+++ b/sql/src/test/java/org/apache/druid/sql/calcite/IngestionTestSqlEngine.java
@@ -92,7 +92,6 @@ public class IngestionTestSqlEngine implements SqlEngine
case TIMESERIES_QUERY:
case TOPN_QUERY:
case TIME_BOUNDARY_QUERY:
- case SCAN_NEEDS_SIGNATURE:
case UNNEST:
case GROUPBY_IMPLICITLY_SORTS:
case WINDOW_FUNCTIONS:
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]