mirror of https://github.com/apache/druid.git
removals
This commit is contained in:
parent
8f286b376e
commit
4e84219724
|
@ -13,11 +13,162 @@
|
|||
( SELECT * FROM
|
||||
( SELECT * FROM lotsocolumns, UNNEST(MV_TO_ARRAY(dimMultivalEnumerated)) as ut(dim3_unnest1) ) ,UNNEST(MV_TO_ARRAY(dimMultivalEnumerated)) as ut(dim3_unnest2)
|
||||
), UNNEST(MV_TO_ARRAY(dimMultivalEnumerated)) as ut(dim3_unnest3) WHERE dimZipf=27 AND dim3_unnest1='Baz' AND dim3_unnest2='Hello' AND dim3_unnest3='World';
|
||||
+---------+--------------+--------------+--------------+
|
||||
| dimZipf | dim3_unnest1 | dim3_unnest2 | dim3_unnest3 |
|
||||
+---------+--------------+--------------+--------------+
|
||||
+---------+--------------+--------------+--------------+
|
||||
(0 rows)
|
||||
org.apache.calcite.avatica.AvaticaSqlException: Error -1 (00000) : Error while executing SQL " SELECT dimZipf, dim3_unnest1, dim3_unnest2, dim3_unnest3 FROM
|
||||
( SELECT * FROM
|
||||
( SELECT * FROM lotsocolumns, UNNEST(MV_TO_ARRAY(dimMultivalEnumerated)) as ut(dim3_unnest1) ) ,UNNEST(MV_TO_ARRAY(dimMultivalEnumerated)) as ut(dim3_unnest2)
|
||||
), UNNEST(MV_TO_ARRAY(dimMultivalEnumerated)) as ut(dim3_unnest3) WHERE dimZipf=27 AND dim3_unnest1='Baz' AND dim3_unnest2='Hello' AND dim3_unnest3='World'": Remote driver error: UOE: Predicate does not support ARRAY types
|
||||
at org.apache.calcite.avatica.Helper.createException(Helper.java:54)
|
||||
at org.apache.calcite.avatica.Helper.createException(Helper.java:41)
|
||||
at org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:164)
|
||||
at org.apache.calcite.avatica.AvaticaStatement.executeQuery(AvaticaStatement.java:228)
|
||||
at net.hydromatic.quidem.Quidem.checkResult(Quidem.java:299)
|
||||
at net.hydromatic.quidem.Quidem.access$2600(Quidem.java:57)
|
||||
at net.hydromatic.quidem.Quidem$ContextImpl.checkResult(Quidem.java:1636)
|
||||
at net.hydromatic.quidem.Quidem$CheckResultCommand.execute(Quidem.java:941)
|
||||
at net.hydromatic.quidem.Quidem$CompositeCommand.execute(Quidem.java:1437)
|
||||
at net.hydromatic.quidem.Quidem.execute(Quidem.java:190)
|
||||
at org.apache.druid.quidem.DruidQuidemTestBase$DruidQuidemRunner.run(DruidQuidemTestBase.java:158)
|
||||
at org.apache.druid.quidem.DruidQuidemTestBase$DruidQuidemRunner.run(DruidQuidemTestBase.java:138)
|
||||
at org.apache.druid.sql.calcite.QTestCase$1.run(QTestCase.java:73)
|
||||
at org.apache.druid.sql.calcite.QueryTestRunner.run(QueryTestRunner.java:768)
|
||||
at org.apache.druid.sql.calcite.QueryTestBuilder.run(QueryTestBuilder.java:304)
|
||||
at org.apache.druid.sql.calcite.BaseCalciteQueryTest.testQuery(BaseCalciteQueryTest.java:780)
|
||||
at org.apache.druid.sql.calcite.CalciteArraysQueryTest.testUnnestThriceWithFiltersOnDimAndAllUnnestColumns(CalciteArraysQueryTest.java:4747)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:728)
|
||||
at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
|
||||
at org.apache.druid.sql.calcite.NotYetSupported$NotYetSupportedProcessor.interceptTestMethod(NotYetSupported.java:131)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
|
||||
at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156)
|
||||
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147)
|
||||
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)
|
||||
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92)
|
||||
at org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:218)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:214)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:139)
|
||||
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:69)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
|
||||
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
|
||||
at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)
|
||||
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
|
||||
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
|
||||
at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)
|
||||
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
|
||||
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
|
||||
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
|
||||
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
|
||||
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)
|
||||
at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)
|
||||
at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:198)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:169)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:93)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:58)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:141)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:57)
|
||||
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:103)
|
||||
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:85)
|
||||
at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47)
|
||||
at org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:56)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:184)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:148)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:122)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)
|
||||
org.apache.druid.java.util.common.UOE: Predicate does not support ARRAY types
|
||||
at org.apache.druid.query.filter.DruidPredicateFactory.makeArrayPredicate(DruidPredicateFactory.java:42)
|
||||
at org.apache.druid.segment.filter.PredicateValueMatcherFactory.makeArrayProcessor(PredicateValueMatcherFactory.java:110)
|
||||
at org.apache.druid.segment.filter.StringConstantValueMatcherFactory.makeArrayProcessor(StringConstantValueMatcherFactory.java:90)
|
||||
at org.apache.druid.segment.filter.StringConstantValueMatcherFactory.makeArrayProcessor(StringConstantValueMatcherFactory.java:39)
|
||||
at org.apache.druid.segment.ColumnProcessors.makeProcessorInternal(ColumnProcessors.java:290)
|
||||
at org.apache.druid.segment.ColumnProcessors.makeProcessor(ColumnProcessors.java:77)
|
||||
at org.apache.druid.segment.filter.SelectorFilter.makeMatcher(SelectorFilter.java:115)
|
||||
at org.apache.druid.segment.join.PostJoinCursor.<init>(PostJoinCursor.java:56)
|
||||
at org.apache.druid.segment.join.PostJoinCursor.wrap(PostJoinCursor.java:67)
|
||||
at org.apache.druid.segment.UnnestCursorFactory$1.asCursor(UnnestCursorFactory.java:130)
|
||||
at org.apache.druid.segment.UnnestCursorFactory$1.asCursor(UnnestCursorFactory.java:105)
|
||||
at org.apache.druid.segment.UnnestCursorFactory$1.asCursor(UnnestCursorFactory.java:105)
|
||||
at org.apache.druid.query.scan.ScanQueryEngine$1.make(ScanQueryEngine.java:143)
|
||||
at org.apache.druid.java.util.common.guava.BaseSequence.toYielder(BaseSequence.java:66)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.java.util.common.guava.SequenceWrapper.wrap(SequenceWrapper.java:55)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.java.util.common.guava.SequenceWrapper.wrap(SequenceWrapper.java:55)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
at org.apache.druid.query.spec.SpecificSegmentQueryRunner$1.toYielder(SpecificSegmentQueryRunner.java:113)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.query.spec.SpecificSegmentQueryRunner.doNamed(SpecificSegmentQueryRunner.java:185)
|
||||
at org.apache.druid.query.spec.SpecificSegmentQueryRunner$2.wrap(SpecificSegmentQueryRunner.java:165)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
at org.apache.druid.java.util.common.guava.ConcatSequence.makeYielder(ConcatSequence.java:85)
|
||||
at org.apache.druid.java.util.common.guava.ConcatSequence.toYielder(ConcatSequence.java:65)
|
||||
at org.apache.druid.java.util.common.guava.MappedSequence.toYielder(MappedSequence.java:49)
|
||||
at org.apache.druid.java.util.common.guava.MappedSequence.toYielder(MappedSequence.java:49)
|
||||
at org.apache.druid.java.util.common.guava.LazySequence.toYielder(LazySequence.java:46)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.java.util.common.guava.SequenceWrapper.wrap(SequenceWrapper.java:55)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
at org.apache.druid.java.util.common.guava.MergeSequence.lambda$toYielder$0(MergeSequence.java:66)
|
||||
at org.apache.druid.java.util.common.guava.BaseSequence.accumulate(BaseSequence.java:44)
|
||||
at org.apache.druid.java.util.common.guava.MergeSequence.toYielder(MergeSequence.java:63)
|
||||
at org.apache.druid.query.RetryQueryRunner$1.toYielder(RetryQueryRunner.java:133)
|
||||
at org.apache.druid.java.util.common.guava.MappedSequence.toYielder(MappedSequence.java:49)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.query.CPUTimeMetricQueryRunner$1.wrap(CPUTimeMetricQueryRunner.java:77)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.java.util.common.guava.SequenceWrapper.wrap(SequenceWrapper.java:55)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
at org.apache.druid.java.util.common.guava.MappedSequence.toYielder(MappedSequence.java:49)
|
||||
at org.apache.druid.java.util.common.guava.ConcatSequence.toYielder(ConcatSequence.java:51)
|
||||
at org.apache.druid.java.util.common.guava.MappedSequence.toYielder(MappedSequence.java:49)
|
||||
at org.apache.druid.java.util.common.guava.Yielders.each(Yielders.java:32)
|
||||
at org.apache.druid.sql.avatica.DruidJdbcResultSet.lambda$execute$0(DruidJdbcResultSet.java:239)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
at java.base/java.lang.Thread.run(Thread.java:829)
|
||||
|
||||
!ok
|
||||
LogicalProject(dimZipf=[$0], dim3_unnest1=[CAST('Baz':VARCHAR):VARCHAR], dim3_unnest2=[$1], dim3_unnest3=[$3])
|
||||
|
@ -57,10 +208,13 @@ DruidProject(dimZipf=[$0], dim3_unnest1=[CAST('Baz':VARCHAR):VARCHAR], dim3_unne
|
|||
"name" : "lotsocolumns"
|
||||
},
|
||||
"filter" : {
|
||||
"type" : "equals",
|
||||
"column" : "dimZipf",
|
||||
"matchValueType" : "LONG",
|
||||
"matchValue" : 27
|
||||
"type" : "bound",
|
||||
"dimension" : "dimZipf",
|
||||
"lower" : "27",
|
||||
"upper" : "27",
|
||||
"ordering" : {
|
||||
"type" : "numeric"
|
||||
}
|
||||
}
|
||||
},
|
||||
"virtualColumn" : {
|
||||
|
@ -70,10 +224,9 @@ DruidProject(dimZipf=[$0], dim3_unnest1=[CAST('Baz':VARCHAR):VARCHAR], dim3_unne
|
|||
"outputType" : "ARRAY<STRING>"
|
||||
},
|
||||
"unnestFilter" : {
|
||||
"type" : "equals",
|
||||
"column" : "j0.unnest",
|
||||
"matchValueType" : "STRING",
|
||||
"matchValue" : "Baz"
|
||||
"type" : "selector",
|
||||
"dimension" : "j0.unnest",
|
||||
"value" : "Baz"
|
||||
}
|
||||
},
|
||||
"virtualColumn" : {
|
||||
|
@ -83,10 +236,9 @@ DruidProject(dimZipf=[$0], dim3_unnest1=[CAST('Baz':VARCHAR):VARCHAR], dim3_unne
|
|||
"outputType" : "ARRAY<STRING>"
|
||||
},
|
||||
"unnestFilter" : {
|
||||
"type" : "equals",
|
||||
"column" : "j0.unnest",
|
||||
"matchValueType" : "STRING",
|
||||
"matchValue" : "Hello"
|
||||
"type" : "selector",
|
||||
"dimension" : "j0.unnest",
|
||||
"value" : "Hello"
|
||||
}
|
||||
},
|
||||
"virtualColumn" : {
|
||||
|
@ -96,10 +248,9 @@ DruidProject(dimZipf=[$0], dim3_unnest1=[CAST('Baz':VARCHAR):VARCHAR], dim3_unne
|
|||
"outputType" : "ARRAY<STRING>"
|
||||
},
|
||||
"unnestFilter" : {
|
||||
"type" : "equals",
|
||||
"column" : "_j0.unnest",
|
||||
"matchValueType" : "STRING",
|
||||
"matchValue" : "World"
|
||||
"type" : "selector",
|
||||
"dimension" : "_j0.unnest",
|
||||
"value" : "World"
|
||||
}
|
||||
},
|
||||
"intervals" : {
|
||||
|
|
|
@ -92,27 +92,28 @@ org.apache.calcite.avatica.AvaticaSqlException: Error -1 (00000) : Error while e
|
|||
at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)
|
||||
at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)
|
||||
at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:147)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:127)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:90)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:55)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:102)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:54)
|
||||
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)
|
||||
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:95)
|
||||
at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:91)
|
||||
at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:60)
|
||||
at org.eclipse.jdt.internal.junit5.runner.JUnit5TestReference.run(JUnit5TestReference.java:98)
|
||||
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:40)
|
||||
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:529)
|
||||
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:756)
|
||||
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:452)
|
||||
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:210)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:198)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:169)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:93)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:58)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:141)
|
||||
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:57)
|
||||
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:103)
|
||||
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:85)
|
||||
at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47)
|
||||
at org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:56)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:184)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:148)
|
||||
at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:122)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)
|
||||
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)
|
||||
org.apache.druid.java.util.common.UOE: Predicate does not support ARRAY types
|
||||
at org.apache.druid.query.filter.DruidPredicateFactory.makeArrayPredicate(DruidPredicateFactory.java:42)
|
||||
at org.apache.druid.segment.filter.PredicateValueMatcherFactory.makeArrayProcessor(PredicateValueMatcherFactory.java:110)
|
||||
at org.apache.druid.segment.filter.StringConstantValueMatcherFactory.makeArrayProcessor(StringConstantValueMatcherFactory.java:90)
|
||||
at org.apache.druid.segment.filter.StringConstantValueMatcherFactory.makeArrayProcessor(StringConstantValueMatcherFactory.java:1)
|
||||
at org.apache.druid.segment.filter.StringConstantValueMatcherFactory.makeArrayProcessor(StringConstantValueMatcherFactory.java:39)
|
||||
at org.apache.druid.segment.ColumnProcessors.makeProcessorInternal(ColumnProcessors.java:290)
|
||||
at org.apache.druid.segment.ColumnProcessors.makeProcessor(ColumnProcessors.java:77)
|
||||
at org.apache.druid.segment.filter.SelectorFilter.makeMatcher(SelectorFilter.java:115)
|
||||
|
@ -124,16 +125,16 @@ org.apache.druid.java.util.common.UOE: Predicate does not support ARRAY types
|
|||
at org.apache.druid.query.scan.ScanQueryEngine$1.make(ScanQueryEngine.java:143)
|
||||
at org.apache.druid.java.util.common.guava.BaseSequence.toYielder(BaseSequence.java:66)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:1)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.java.util.common.guava.SequenceWrapper.wrap(SequenceWrapper.java:55)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:1)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.java.util.common.guava.SequenceWrapper.wrap(SequenceWrapper.java:55)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
at org.apache.druid.query.spec.SpecificSegmentQueryRunner$1.toYielder(SpecificSegmentQueryRunner.java:113)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:1)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.query.spec.SpecificSegmentQueryRunner.doNamed(SpecificSegmentQueryRunner.java:185)
|
||||
at org.apache.druid.query.spec.SpecificSegmentQueryRunner$2.wrap(SpecificSegmentQueryRunner.java:165)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
|
@ -143,27 +144,27 @@ org.apache.druid.java.util.common.UOE: Predicate does not support ARRAY types
|
|||
at org.apache.druid.java.util.common.guava.MappedSequence.toYielder(MappedSequence.java:49)
|
||||
at org.apache.druid.java.util.common.guava.LazySequence.toYielder(LazySequence.java:46)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:1)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.java.util.common.guava.SequenceWrapper.wrap(SequenceWrapper.java:55)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
at org.apache.druid.java.util.common.guava.MergeSequence.lambda$1(MergeSequence.java:66)
|
||||
at org.apache.druid.java.util.common.guava.MergeSequence.lambda$toYielder$0(MergeSequence.java:66)
|
||||
at org.apache.druid.java.util.common.guava.BaseSequence.accumulate(BaseSequence.java:44)
|
||||
at org.apache.druid.java.util.common.guava.MergeSequence.toYielder(MergeSequence.java:63)
|
||||
at org.apache.druid.query.RetryQueryRunner$1.toYielder(RetryQueryRunner.java:133)
|
||||
at org.apache.druid.java.util.common.guava.MappedSequence.toYielder(MappedSequence.java:49)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:1)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.query.CPUTimeMetricQueryRunner$1.wrap(CPUTimeMetricQueryRunner.java:77)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:88)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:1)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence$2.get(WrappingSequence.java:84)
|
||||
at org.apache.druid.java.util.common.guava.SequenceWrapper.wrap(SequenceWrapper.java:55)
|
||||
at org.apache.druid.java.util.common.guava.WrappingSequence.toYielder(WrappingSequence.java:83)
|
||||
at org.apache.druid.java.util.common.guava.MappedSequence.toYielder(MappedSequence.java:49)
|
||||
at org.apache.druid.java.util.common.guava.ConcatSequence.toYielder(ConcatSequence.java:51)
|
||||
at org.apache.druid.java.util.common.guava.MappedSequence.toYielder(MappedSequence.java:49)
|
||||
at org.apache.druid.java.util.common.guava.Yielders.each(Yielders.java:32)
|
||||
at org.apache.druid.sql.avatica.DruidJdbcResultSet.lambda$0(DruidJdbcResultSet.java:239)
|
||||
at org.apache.druid.sql.avatica.DruidJdbcResultSet.lambda$execute$0(DruidJdbcResultSet.java:239)
|
||||
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
|
||||
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
|
||||
|
|
|
@ -45,10 +45,9 @@ DruidAggregate(group=[{1}], EXPR$1=[COUNT()], druid=[logical])
|
|||
"outputType" : "ARRAY<STRING>"
|
||||
},
|
||||
"unnestFilter" : {
|
||||
"type" : "equals",
|
||||
"column" : "j0.unnest",
|
||||
"matchValueType" : "STRING",
|
||||
"matchValue" : "b"
|
||||
"type" : "selector",
|
||||
"dimension" : "j0.unnest",
|
||||
"value" : "b"
|
||||
}
|
||||
},
|
||||
"intervals" : {
|
||||
|
|
|
@ -1,103 +0,0 @@
|
|||
# testJoinWithInputRefCondition@NullHandling=default case-crc:9a6c217b
|
||||
# quidem testcase reason: JOIN_FILTER_LOCATIONS
|
||||
!set debug true
|
||||
!set defaultTimeout 300000
|
||||
!set maxScatterGatherBytes 9223372036854775807
|
||||
!set plannerStrategy DECOUPLED
|
||||
!set sqlCurrentTimestamp 2000-01-01T00:00:00Z
|
||||
!set sqlQueryId dummy
|
||||
!set outputformat mysql
|
||||
!use druidtest:///
|
||||
SELECT COUNT(*) FILTER (WHERE FLOOR(100) NOT IN (SELECT m1 FROM foo)) FROM foo;
|
||||
+--------+
|
||||
| EXPR$0 |
|
||||
+--------+
|
||||
| 6 |
|
||||
+--------+
|
||||
(1 row)
|
||||
|
||||
!ok
|
||||
LogicalAggregate(group=[{}], EXPR$0=[COUNT() FILTER $0])
|
||||
LogicalProject($f0=[IS NULL($9)])
|
||||
LogicalJoin(condition=[=(CAST(FLOOR(100)):FLOAT NOT NULL, $8)], joinType=[left])
|
||||
LogicalTableScan(table=[[druid, foo]])
|
||||
LogicalAggregate(group=[{0}], i=[LITERAL_AGG(true)])
|
||||
LogicalProject(m1=[$5])
|
||||
LogicalTableScan(table=[[druid, foo]])
|
||||
|
||||
!logicalPlan
|
||||
DruidAggregate(group=[{}], EXPR$0=[COUNT() FILTER $0], druid=[logical])
|
||||
DruidProject($f0=[IS NULL($9)], druid=[logical])
|
||||
DruidJoin(condition=[=(CAST(FLOOR(100)):FLOAT NOT NULL, $8)], joinType=[left])
|
||||
DruidTableScan(table=[[druid, foo]], druid=[logical])
|
||||
DruidAggregate(group=[{0}], i=[LITERAL_AGG(true)], druid=[logical])
|
||||
DruidProject(m1=[$5], druid=[logical])
|
||||
DruidTableScan(table=[[druid, foo]], druid=[logical])
|
||||
|
||||
!druidPlan
|
||||
{
|
||||
"queryType" : "timeseries",
|
||||
"dataSource" : {
|
||||
"type" : "join",
|
||||
"left" : {
|
||||
"type" : "table",
|
||||
"name" : "foo"
|
||||
},
|
||||
"right" : {
|
||||
"type" : "query",
|
||||
"query" : {
|
||||
"queryType" : "groupBy",
|
||||
"dataSource" : {
|
||||
"type" : "table",
|
||||
"name" : "foo"
|
||||
},
|
||||
"intervals" : {
|
||||
"type" : "intervals",
|
||||
"intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ]
|
||||
},
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"dimensions" : [ {
|
||||
"type" : "default",
|
||||
"dimension" : "m1",
|
||||
"outputName" : "d0",
|
||||
"outputType" : "FLOAT"
|
||||
} ],
|
||||
"postAggregations" : [ {
|
||||
"type" : "expression",
|
||||
"name" : "a0",
|
||||
"expression" : "1",
|
||||
"outputType" : "LONG"
|
||||
} ],
|
||||
"limitSpec" : {
|
||||
"type" : "NoopLimitSpec"
|
||||
}
|
||||
}
|
||||
},
|
||||
"rightPrefix" : "j0.",
|
||||
"condition" : "(CAST(floor(100), 'DOUBLE') == \"j0.d0\")",
|
||||
"joinType" : "LEFT"
|
||||
},
|
||||
"intervals" : {
|
||||
"type" : "intervals",
|
||||
"intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ]
|
||||
},
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"aggregations" : [ {
|
||||
"type" : "filtered",
|
||||
"aggregator" : {
|
||||
"type" : "count",
|
||||
"name" : "a0"
|
||||
},
|
||||
"filter" : {
|
||||
"type" : "selector",
|
||||
"dimension" : "j0.a0",
|
||||
"value" : null
|
||||
},
|
||||
"name" : "a0"
|
||||
} ]
|
||||
}
|
||||
!nativePlan
|
|
@ -1,161 +0,0 @@
|
|||
# testJoinWithInputRefCondition@NullHandling=sql case-crc:9a6c217b
|
||||
# quidem testcase reason: JOIN_FILTER_LOCATIONS
|
||||
!set debug true
|
||||
!set defaultTimeout 300000
|
||||
!set maxScatterGatherBytes 9223372036854775807
|
||||
!set plannerStrategy DECOUPLED
|
||||
!set sqlCurrentTimestamp 2000-01-01T00:00:00Z
|
||||
!set sqlQueryId dummy
|
||||
!set outputformat mysql
|
||||
!use druidtest:///
|
||||
SELECT COUNT(*) FILTER (WHERE FLOOR(100) NOT IN (SELECT m1 FROM foo)) FROM foo;
|
||||
+--------+
|
||||
| EXPR$0 |
|
||||
+--------+
|
||||
| 6 |
|
||||
+--------+
|
||||
(1 row)
|
||||
|
||||
!ok
|
||||
LogicalAggregate(group=[{}], EXPR$0=[COUNT() FILTER $0])
|
||||
LogicalProject($f0=[OR(=($8, 0), AND(IS NULL($11), >=($9, $8)))])
|
||||
LogicalJoin(condition=[=(CAST(FLOOR(100)):FLOAT NOT NULL, $10)], joinType=[left])
|
||||
LogicalJoin(condition=[true], joinType=[inner])
|
||||
LogicalTableScan(table=[[druid, foo]])
|
||||
LogicalAggregate(group=[{}], c=[COUNT()], ck=[COUNT($5)])
|
||||
LogicalTableScan(table=[[druid, foo]])
|
||||
LogicalAggregate(group=[{5}], i=[LITERAL_AGG(true)])
|
||||
LogicalTableScan(table=[[druid, foo]])
|
||||
|
||||
!logicalPlan
|
||||
DruidAggregate(group=[{}], EXPR$0=[COUNT() FILTER $0], druid=[logical])
|
||||
DruidProject($f0=[OR(=($8, 0), AND(IS NULL($11), >=($9, $8)))], druid=[logical])
|
||||
DruidJoin(condition=[=(CAST(FLOOR(100)):FLOAT NOT NULL, $10)], joinType=[left])
|
||||
DruidJoin(condition=[true], joinType=[inner])
|
||||
DruidTableScan(table=[[druid, foo]], druid=[logical])
|
||||
DruidAggregate(group=[{}], c=[COUNT()], ck=[COUNT($5)], druid=[logical])
|
||||
DruidTableScan(table=[[druid, foo]], druid=[logical])
|
||||
DruidAggregate(group=[{5}], i=[LITERAL_AGG(true)], druid=[logical])
|
||||
DruidTableScan(table=[[druid, foo]], druid=[logical])
|
||||
|
||||
!druidPlan
|
||||
{
|
||||
"queryType" : "timeseries",
|
||||
"dataSource" : {
|
||||
"type" : "join",
|
||||
"left" : {
|
||||
"type" : "join",
|
||||
"left" : {
|
||||
"type" : "table",
|
||||
"name" : "foo"
|
||||
},
|
||||
"right" : {
|
||||
"type" : "query",
|
||||
"query" : {
|
||||
"queryType" : "timeseries",
|
||||
"dataSource" : {
|
||||
"type" : "table",
|
||||
"name" : "foo"
|
||||
},
|
||||
"intervals" : {
|
||||
"type" : "intervals",
|
||||
"intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ]
|
||||
},
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"aggregations" : [ {
|
||||
"type" : "count",
|
||||
"name" : "a0"
|
||||
}, {
|
||||
"type" : "filtered",
|
||||
"aggregator" : {
|
||||
"type" : "count",
|
||||
"name" : "a1"
|
||||
},
|
||||
"filter" : {
|
||||
"type" : "not",
|
||||
"field" : {
|
||||
"type" : "null",
|
||||
"column" : "m1"
|
||||
}
|
||||
},
|
||||
"name" : "a1"
|
||||
} ]
|
||||
}
|
||||
},
|
||||
"rightPrefix" : "j0.",
|
||||
"condition" : "1",
|
||||
"joinType" : "INNER"
|
||||
},
|
||||
"right" : {
|
||||
"type" : "query",
|
||||
"query" : {
|
||||
"queryType" : "groupBy",
|
||||
"dataSource" : {
|
||||
"type" : "table",
|
||||
"name" : "foo"
|
||||
},
|
||||
"intervals" : {
|
||||
"type" : "intervals",
|
||||
"intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ]
|
||||
},
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"dimensions" : [ {
|
||||
"type" : "default",
|
||||
"dimension" : "m1",
|
||||
"outputName" : "d0",
|
||||
"outputType" : "FLOAT"
|
||||
} ],
|
||||
"postAggregations" : [ {
|
||||
"type" : "expression",
|
||||
"name" : "a0",
|
||||
"expression" : "1",
|
||||
"outputType" : "LONG"
|
||||
} ],
|
||||
"limitSpec" : {
|
||||
"type" : "NoopLimitSpec"
|
||||
}
|
||||
}
|
||||
},
|
||||
"rightPrefix" : "_j0.",
|
||||
"condition" : "(CAST(floor(100), 'DOUBLE') == \"_j0.d0\")",
|
||||
"joinType" : "LEFT"
|
||||
},
|
||||
"intervals" : {
|
||||
"type" : "intervals",
|
||||
"intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ]
|
||||
},
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"aggregations" : [ {
|
||||
"type" : "filtered",
|
||||
"aggregator" : {
|
||||
"type" : "count",
|
||||
"name" : "a0"
|
||||
},
|
||||
"filter" : {
|
||||
"type" : "or",
|
||||
"fields" : [ {
|
||||
"type" : "equals",
|
||||
"column" : "j0.a0",
|
||||
"matchValueType" : "LONG",
|
||||
"matchValue" : 0
|
||||
}, {
|
||||
"type" : "and",
|
||||
"fields" : [ {
|
||||
"type" : "null",
|
||||
"column" : "_j0.a0"
|
||||
}, {
|
||||
"type" : "expression",
|
||||
"expression" : "(\"j0.a1\" >= \"j0.a0\")"
|
||||
} ]
|
||||
} ]
|
||||
},
|
||||
"name" : "a0"
|
||||
} ]
|
||||
}
|
||||
!nativePlan
|
|
@ -1,110 +0,0 @@
|
|||
# testSubqueryTypeMismatchWithLiterals@NullHandling=default case-crc:e7079756
|
||||
# quidem testcase reason: AGGREGATE_REMOVE_NOT_FIRED
|
||||
!set debug true
|
||||
!set defaultTimeout 300000
|
||||
!set maxScatterGatherBytes 9223372036854775807
|
||||
!set plannerStrategy DECOUPLED
|
||||
!set sqlCurrentTimestamp 2000-01-01T00:00:00Z
|
||||
!set sqlQueryId dummy
|
||||
!set outputformat mysql
|
||||
!use druidtest:///
|
||||
SELECT
|
||||
dim1,
|
||||
SUM(CASE WHEN sum_l1 = 0 THEN 1 ELSE 0 END) AS outer_l1
|
||||
from (
|
||||
select
|
||||
dim1,
|
||||
SUM(l1) as sum_l1
|
||||
from numfoo
|
||||
group by dim1
|
||||
)
|
||||
group by 1;
|
||||
+------+----------+
|
||||
| dim1 | outer_l1 |
|
||||
+------+----------+
|
||||
| | 0 |
|
||||
| 1 | 1 |
|
||||
| 10.1 | 0 |
|
||||
| 2 | 1 |
|
||||
| abc | 1 |
|
||||
| def | 1 |
|
||||
+------+----------+
|
||||
(6 rows)
|
||||
|
||||
!ok
|
||||
LogicalAggregate(group=[{0}], outer_l1=[COUNT() FILTER $1])
|
||||
LogicalProject(dim1=[$0], $f2=[=($1, 0)])
|
||||
LogicalAggregate(group=[{1}], sum_l1=[SUM($11)])
|
||||
LogicalTableScan(table=[[druid, numfoo]])
|
||||
|
||||
!logicalPlan
|
||||
DruidAggregate(group=[{0}], outer_l1=[COUNT() FILTER $1], druid=[logical])
|
||||
DruidProject(dim1=[$0], $f2=[=($1, 0)], druid=[logical])
|
||||
DruidAggregate(group=[{1}], sum_l1=[SUM($11)], druid=[logical])
|
||||
DruidTableScan(table=[[druid, numfoo]], druid=[logical])
|
||||
|
||||
!druidPlan
|
||||
{
|
||||
"queryType" : "groupBy",
|
||||
"dataSource" : {
|
||||
"type" : "query",
|
||||
"query" : {
|
||||
"queryType" : "groupBy",
|
||||
"dataSource" : {
|
||||
"type" : "table",
|
||||
"name" : "numfoo"
|
||||
},
|
||||
"intervals" : {
|
||||
"type" : "intervals",
|
||||
"intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ]
|
||||
},
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"dimensions" : [ {
|
||||
"type" : "default",
|
||||
"dimension" : "dim1",
|
||||
"outputName" : "_d0",
|
||||
"outputType" : "STRING"
|
||||
} ],
|
||||
"aggregations" : [ {
|
||||
"type" : "longSum",
|
||||
"name" : "a0",
|
||||
"fieldName" : "l1"
|
||||
} ],
|
||||
"limitSpec" : {
|
||||
"type" : "NoopLimitSpec"
|
||||
}
|
||||
}
|
||||
},
|
||||
"intervals" : {
|
||||
"type" : "intervals",
|
||||
"intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ]
|
||||
},
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"dimensions" : [ {
|
||||
"type" : "default",
|
||||
"dimension" : "_d0",
|
||||
"outputName" : "d0",
|
||||
"outputType" : "STRING"
|
||||
} ],
|
||||
"aggregations" : [ {
|
||||
"type" : "filtered",
|
||||
"aggregator" : {
|
||||
"type" : "count",
|
||||
"name" : "_a0"
|
||||
},
|
||||
"filter" : {
|
||||
"type" : "selector",
|
||||
"dimension" : "a0",
|
||||
"value" : "0"
|
||||
},
|
||||
"name" : "_a0"
|
||||
} ],
|
||||
"limitSpec" : {
|
||||
"type" : "NoopLimitSpec"
|
||||
}
|
||||
}
|
||||
!nativePlan
|
|
@ -1,111 +0,0 @@
|
|||
# testSubqueryTypeMismatchWithLiterals@NullHandling=sql case-crc:e7079756
|
||||
# quidem testcase reason: AGGREGATE_REMOVE_NOT_FIRED
|
||||
!set debug true
|
||||
!set defaultTimeout 300000
|
||||
!set maxScatterGatherBytes 9223372036854775807
|
||||
!set plannerStrategy DECOUPLED
|
||||
!set sqlCurrentTimestamp 2000-01-01T00:00:00Z
|
||||
!set sqlQueryId dummy
|
||||
!set outputformat mysql
|
||||
!use druidtest:///
|
||||
SELECT
|
||||
dim1,
|
||||
SUM(CASE WHEN sum_l1 = 0 THEN 1 ELSE 0 END) AS outer_l1
|
||||
from (
|
||||
select
|
||||
dim1,
|
||||
SUM(l1) as sum_l1
|
||||
from numfoo
|
||||
group by dim1
|
||||
)
|
||||
group by 1;
|
||||
+------+----------+
|
||||
| dim1 | outer_l1 |
|
||||
+------+----------+
|
||||
| | 0 |
|
||||
| 1 | 0 |
|
||||
| 10.1 | 0 |
|
||||
| 2 | 1 |
|
||||
| abc | 0 |
|
||||
| def | 0 |
|
||||
+------+----------+
|
||||
(6 rows)
|
||||
|
||||
!ok
|
||||
LogicalAggregate(group=[{0}], outer_l1=[COUNT() FILTER $1])
|
||||
LogicalProject(dim1=[$0], $f2=[IS TRUE(=($1, 0))])
|
||||
LogicalAggregate(group=[{1}], sum_l1=[SUM($11)])
|
||||
LogicalTableScan(table=[[druid, numfoo]])
|
||||
|
||||
!logicalPlan
|
||||
DruidAggregate(group=[{0}], outer_l1=[COUNT() FILTER $1], druid=[logical])
|
||||
DruidProject(dim1=[$0], $f2=[IS TRUE(=($1, 0))], druid=[logical])
|
||||
DruidAggregate(group=[{1}], sum_l1=[SUM($11)], druid=[logical])
|
||||
DruidTableScan(table=[[druid, numfoo]], druid=[logical])
|
||||
|
||||
!druidPlan
|
||||
{
|
||||
"queryType" : "groupBy",
|
||||
"dataSource" : {
|
||||
"type" : "query",
|
||||
"query" : {
|
||||
"queryType" : "groupBy",
|
||||
"dataSource" : {
|
||||
"type" : "table",
|
||||
"name" : "numfoo"
|
||||
},
|
||||
"intervals" : {
|
||||
"type" : "intervals",
|
||||
"intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ]
|
||||
},
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"dimensions" : [ {
|
||||
"type" : "default",
|
||||
"dimension" : "dim1",
|
||||
"outputName" : "_d0",
|
||||
"outputType" : "STRING"
|
||||
} ],
|
||||
"aggregations" : [ {
|
||||
"type" : "longSum",
|
||||
"name" : "a0",
|
||||
"fieldName" : "l1"
|
||||
} ],
|
||||
"limitSpec" : {
|
||||
"type" : "NoopLimitSpec"
|
||||
}
|
||||
}
|
||||
},
|
||||
"intervals" : {
|
||||
"type" : "intervals",
|
||||
"intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ]
|
||||
},
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"dimensions" : [ {
|
||||
"type" : "default",
|
||||
"dimension" : "_d0",
|
||||
"outputName" : "d0",
|
||||
"outputType" : "STRING"
|
||||
} ],
|
||||
"aggregations" : [ {
|
||||
"type" : "filtered",
|
||||
"aggregator" : {
|
||||
"type" : "count",
|
||||
"name" : "_a0"
|
||||
},
|
||||
"filter" : {
|
||||
"type" : "equals",
|
||||
"column" : "a0",
|
||||
"matchValueType" : "LONG",
|
||||
"matchValue" : 0
|
||||
},
|
||||
"name" : "_a0"
|
||||
} ],
|
||||
"limitSpec" : {
|
||||
"type" : "NoopLimitSpec"
|
||||
}
|
||||
}
|
||||
!nativePlan
|
|
@ -1,92 +0,0 @@
|
|||
# testTimeFilterOnSubquery@NullHandling=default case-crc:73448efc
|
||||
# quidem testcase reason: EQUIV_PLAN_EXTRA_COLUMNS
|
||||
!set debug true
|
||||
!set defaultTimeout 300000
|
||||
!set maxScatterGatherBytes 9223372036854775807
|
||||
!set plannerStrategy DECOUPLED
|
||||
!set sqlCurrentTimestamp 2000-01-01T00:00:00Z
|
||||
!set sqlQueryId dummy
|
||||
!set outputformat mysql
|
||||
!use druidtest:///
|
||||
SELECT __time, m1 FROM (SELECT * FROM "foo" LIMIT 100)
|
||||
WHERE TIME_IN_INTERVAL(__time, '2000/P1D') OR TIME_IN_INTERVAL(__time, '2001/P1D');
|
||||
+-------------------------+-----+
|
||||
| __time | m1 |
|
||||
+-------------------------+-----+
|
||||
| 2000-01-01 00:00:00.000 | 1.0 |
|
||||
| 2001-01-01 00:00:00.000 | 4.0 |
|
||||
+-------------------------+-----+
|
||||
(2 rows)
|
||||
|
||||
!ok
|
||||
LogicalFilter(condition=[SEARCH($0, Sarg[[2000-01-01 00:00:00:TIMESTAMP(3)..2000-01-02 00:00:00:TIMESTAMP(3)), [2001-01-01 00:00:00:TIMESTAMP(3)..2001-01-02 00:00:00:TIMESTAMP(3))]:TIMESTAMP(3))])
|
||||
LogicalSort(fetch=[100])
|
||||
LogicalProject(__time=[$0], m1=[$5])
|
||||
LogicalTableScan(table=[[druid, foo]])
|
||||
|
||||
!logicalPlan
|
||||
DruidFilter(condition=[SEARCH($0, Sarg[[2000-01-01 00:00:00:TIMESTAMP(3)..2000-01-02 00:00:00:TIMESTAMP(3)), [2001-01-01 00:00:00:TIMESTAMP(3)..2001-01-02 00:00:00:TIMESTAMP(3))]:TIMESTAMP(3))])
|
||||
DruidSort(fetch=[100], druid=[logical])
|
||||
DruidProject(__time=[$0], m1=[$5], druid=[logical])
|
||||
DruidTableScan(table=[[druid, foo]], druid=[logical])
|
||||
|
||||
!druidPlan
|
||||
{
|
||||
"queryType" : "scan",
|
||||
"dataSource" : {
|
||||
"type" : "query",
|
||||
"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",
|
||||
"limit" : 100,
|
||||
"columns" : [ "__time", "m1" ],
|
||||
"columnTypes" : [ "LONG", "FLOAT" ],
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"legacy" : false
|
||||
}
|
||||
},
|
||||
"intervals" : {
|
||||
"type" : "intervals",
|
||||
"intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ]
|
||||
},
|
||||
"resultFormat" : "compactedList",
|
||||
"filter" : {
|
||||
"type" : "or",
|
||||
"fields" : [ {
|
||||
"type" : "bound",
|
||||
"dimension" : "__time",
|
||||
"lower" : "946684800000",
|
||||
"upper" : "946771200000",
|
||||
"upperStrict" : true,
|
||||
"ordering" : {
|
||||
"type" : "numeric"
|
||||
}
|
||||
}, {
|
||||
"type" : "bound",
|
||||
"dimension" : "__time",
|
||||
"lower" : "978307200000",
|
||||
"upper" : "978393600000",
|
||||
"upperStrict" : true,
|
||||
"ordering" : {
|
||||
"type" : "numeric"
|
||||
}
|
||||
} ]
|
||||
},
|
||||
"columns" : [ "__time", "m1" ],
|
||||
"columnTypes" : [ "LONG", "FLOAT" ],
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"legacy" : false
|
||||
}
|
||||
!nativePlan
|
|
@ -1,88 +0,0 @@
|
|||
# testTimeFilterOnSubquery@NullHandling=sql case-crc:73448efc
|
||||
# quidem testcase reason: EQUIV_PLAN_EXTRA_COLUMNS
|
||||
!set debug true
|
||||
!set defaultTimeout 300000
|
||||
!set maxScatterGatherBytes 9223372036854775807
|
||||
!set plannerStrategy DECOUPLED
|
||||
!set sqlCurrentTimestamp 2000-01-01T00:00:00Z
|
||||
!set sqlQueryId dummy
|
||||
!set outputformat mysql
|
||||
!use druidtest:///
|
||||
SELECT __time, m1 FROM (SELECT * FROM "foo" LIMIT 100)
|
||||
WHERE TIME_IN_INTERVAL(__time, '2000/P1D') OR TIME_IN_INTERVAL(__time, '2001/P1D');
|
||||
+-------------------------+-----+
|
||||
| __time | m1 |
|
||||
+-------------------------+-----+
|
||||
| 2000-01-01 00:00:00.000 | 1.0 |
|
||||
| 2001-01-01 00:00:00.000 | 4.0 |
|
||||
+-------------------------+-----+
|
||||
(2 rows)
|
||||
|
||||
!ok
|
||||
LogicalFilter(condition=[SEARCH($0, Sarg[[2000-01-01 00:00:00:TIMESTAMP(3)..2000-01-02 00:00:00:TIMESTAMP(3)), [2001-01-01 00:00:00:TIMESTAMP(3)..2001-01-02 00:00:00:TIMESTAMP(3))]:TIMESTAMP(3))])
|
||||
LogicalSort(fetch=[100])
|
||||
LogicalProject(__time=[$0], m1=[$5])
|
||||
LogicalTableScan(table=[[druid, foo]])
|
||||
|
||||
!logicalPlan
|
||||
DruidFilter(condition=[SEARCH($0, Sarg[[2000-01-01 00:00:00:TIMESTAMP(3)..2000-01-02 00:00:00:TIMESTAMP(3)), [2001-01-01 00:00:00:TIMESTAMP(3)..2001-01-02 00:00:00:TIMESTAMP(3))]:TIMESTAMP(3))])
|
||||
DruidSort(fetch=[100], druid=[logical])
|
||||
DruidProject(__time=[$0], m1=[$5], druid=[logical])
|
||||
DruidTableScan(table=[[druid, foo]], druid=[logical])
|
||||
|
||||
!druidPlan
|
||||
{
|
||||
"queryType" : "scan",
|
||||
"dataSource" : {
|
||||
"type" : "query",
|
||||
"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",
|
||||
"limit" : 100,
|
||||
"columns" : [ "__time", "m1" ],
|
||||
"columnTypes" : [ "LONG", "FLOAT" ],
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"legacy" : false
|
||||
}
|
||||
},
|
||||
"intervals" : {
|
||||
"type" : "intervals",
|
||||
"intervals" : [ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z" ]
|
||||
},
|
||||
"resultFormat" : "compactedList",
|
||||
"filter" : {
|
||||
"type" : "or",
|
||||
"fields" : [ {
|
||||
"type" : "range",
|
||||
"column" : "__time",
|
||||
"matchValueType" : "LONG",
|
||||
"lower" : 946684800000,
|
||||
"upper" : 946771200000,
|
||||
"upperOpen" : true
|
||||
}, {
|
||||
"type" : "range",
|
||||
"column" : "__time",
|
||||
"matchValueType" : "LONG",
|
||||
"lower" : 978307200000,
|
||||
"upper" : 978393600000,
|
||||
"upperOpen" : true
|
||||
} ]
|
||||
},
|
||||
"columns" : [ "__time", "m1" ],
|
||||
"columnTypes" : [ "LONG", "FLOAT" ],
|
||||
"granularity" : {
|
||||
"type" : "all"
|
||||
},
|
||||
"legacy" : false
|
||||
}
|
||||
!nativePlan
|
Loading…
Reference in New Issue