[
https://issues.apache.org/jira/browse/CALCITE-2932?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Kevin Risden resolved CALCITE-2932.
-----------------------------------
Resolution: Fixed
> DruidAdapterIT regression after 1.17 release
> --------------------------------------------
>
> Key: CALCITE-2932
> URL: https://issues.apache.org/jira/browse/CALCITE-2932
> Project: Calcite
> Issue Type: Bug
> Components: druid
> Affects Versions: 1.18.0
> Reporter: Kevin Risden
> Assignee: Hongze Zhang
> Priority: Major
> Labels: pull-request-available, regression
> Fix For: 1.19.0
>
> Time Spent: 40m
> Remaining Estimate: 0h
>
> Output below from running:
> {code:java}
> mvn clean verify -Pit -DfailIfNoTests=false -Dtest=DoesNotExist
> -Dit.test=DruidAdapterIT
> ...
> [ERROR] Tests run: 234, Failures: 10, Errors: 6, Skipped: 0
> {code}
> {code:java}
> [INFO] Running org.apache.calcite.test.DruidAdapterIT
> [ERROR] Tests run: 234, Failures: 16, Errors: 6, Skipped: 0, Time elapsed:
> 96.879 s <<< FAILURE! - in org.apache.calcite.test.DruidAdapterIT
> [ERROR] testComplexExpressionsIsNull(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 3.725 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> BindableAggregate(group=[{}], EXPR$0=[$SUM0($1)])\n
> BindableFilter(condition=[IS NULL(+(null, CAST($0):INTEGER))])\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> groups=[{29}], aggs=[[COUNT()]])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[0]], groups=[{}], aggs=[[COUNT()]])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testComplexExpressionsIsNull(DruidAdapterIT.java:3475)
> [ERROR] testQueryWithExtractsTimes(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 30.195 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> BindableProject(QUARTER=[$4], WEEK=[$0], DAYOFWEEK=[$1], DAYOFMONTH=[$2],
> DAYOFYEAR=[$3], SUM_ADDED=[$5])\n BindableSort(fetch=[1])\n
> DruidQuery(table=[[wiki, wikiticker]],
> intervals=[[1900-01-01T00:00:00.000Z/3000-01-01T00:00:00.000Z]],
> projects=[[EXTRACT(FLAG(WEEK), $0), EXTRACT(FLAG(DOW), $0),
> EXTRACT(FLAG(DAY), $0), EXTRACT(FLAG(DOY), $0), EXTRACT(FLAG(QUARTER), $0),
> $1]], groups=[{0, 1, 2, 3, 4}], aggs=[[SUM($5)]], sort0=[5], dir0=[ASC])"
> but: was "PLAN=EnumerableInterpreter\n BindableProject(QUARTER=[$4],
> WEEK=[$0], DAYOFWEEK=[$1], DAYOFMONTH=[$2], DAYOFYEAR=[$3], SUM_ADDED=[$5])\n
> DruidQuery(table=[[wiki, wikiticker]],
> intervals=[[1900-01-01T00:00:00.000Z/3000-01-01T00:00:00.000Z]],
> projects=[[EXTRACT(FLAG(WEEK), $0), EXTRACT(FLAG(DOW), $0),
> EXTRACT(FLAG(DAY), $0), EXTRACT(FLAG(DOY), $0), EXTRACT(FLAG(QUARTER), $0),
> $1]], groups=[{0, 1, 2, 3, 4}], aggs=[[SUM($5)]], fetch=[1])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testQueryWithExtractsTimes(DruidAdapterIT.java:4344)
> [ERROR] testPushCast(org.apache.calcite.test.DruidAdapterIT) Time elapsed:
> 4.556 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> BindableSort(sort0=[$0], dir0=[ASC], fetch=[5])\n
> BindableFilter(condition=[=($0, null)])\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> groups=[{1}], aggs=[[]])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[false], groups=[{1}], aggs=[[]], sort0=[0], dir0=[ASC],
> fetch=[5])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testPushCast(DruidAdapterIT.java:1944)
> [ERROR] testPartiallyPostAggregation(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 23.506 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[$63, $89, $90, $91]], groups=[{0}], aggs=[[SUM($2), SUM($3),
> SUM($1)]], post_projects=[[$0, /($1, $2), CASE(=($3, 0), 1.0,
> CAST($3):DECIMAL(19, 0))]], sort0=[1], dir0=[DESC])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[$63, $89, $90, $91]], groups=[{0}], aggs=[[SUM($2), SUM($3),
> SUM($1)]], post_projects=[[$0, /($1, $2), CASE(=($3, 0), 1.0:DECIMAL(19, 0),
> CAST($3):DECIMAL(19, 0))]], sort0=[1], dir0=[DESC])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testPartiallyPostAggregation(DruidAdapterIT.java:2203)
> [ERROR]
> testExpressionsFilterWithCastTimeToDateToChar(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 0.336 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[=(CAST(CAST($0):DATE NOT NULL):VARCHAR CHARACTER SET \"ISO-8859-1\"
> COLLATE \"ISO-8859-1$en_US$primary\" NOT NULL, '1997-01-01')], groups=[{}],
> aggs=[[COUNT()]])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[=(CAST(CAST($0):DATE NOT NULL):VARCHAR NOT NULL, '1997-01-01')],
> groups=[{}], aggs=[[COUNT()]])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testExpressionsFilterWithCastTimeToDateToChar(DruidAdapterIT.java:3581)
> [ERROR]
> testCastConcatOverPostAggregates(org.apache.calcite.test.DruidAdapterIT) Time
> elapsed: 21.004 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[$90, $91]], groups=[{}], aggs=[[COUNT(), SUM($0), SUM($1)]],
> post_projects=[[||(||(CAST(+($0, $1)):VARCHAR CHARACTER SET \"ISO-8859-1\"
> COLLATE \"ISO-8859-1$en_US$primary\", '_'), CAST($2):VARCHAR)]])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[$90, $91]], groups=[{}], aggs=[[COUNT(), SUM($0), SUM($1)]],
> post_projects=[[||(||(CAST(+($0, $1)):VARCHAR, '_'), CAST($2):VARCHAR)]])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testCastConcatOverPostAggregates(DruidAdapterIT.java:4362)
> [ERROR] testNotTrueSimpleFilter(org.apache.calcite.test.DruidAdapterIT) Time
> elapsed: 5.279 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[AND(IS NOT TRUE(=($1, 1020)), IS FALSE(=($1, 1020)))], groups=[{}],
> aggs=[[COUNT()]])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[AND(IS NOT TRUE(=($1, 1020)), <>($1, 1020))], groups=[{}],
> aggs=[[COUNT()]])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testNotTrueSimpleFilter(DruidAdapterIT.java:4024)
> [ERROR] testBooleanFilterExpressions(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 0.064 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]], filter=[IS
> TRUE(CAST(<>($1, '1')):BOOLEAN)], groups=[{}], aggs=[[COUNT()]])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[<>($1, '1')], groups=[{}], aggs=[[COUNT()]])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testBooleanFilterExpressions(DruidAdapterIT.java:3810)
> [ERROR]
> testFilterClauseNotFactoredOut1(org.apache.calcite.test.DruidAdapterIT) Time
> elapsed: 0.01 s <<< ERROR!
> java.sql.SQLException: Error while executing SQL "select sum("store_sales")
> filter (where "store_state" = 'CA'), sum("store_cost") from "foodmart"":
> Error while applying rule DruidAggregateProjectRule, args
> [rel#99096:LogicalAggregate.NONE.[](input=RelSubset#99095,group={},EXPR$0=SUM($0)
> FILTER $1,EXPR$1=SUM($2)),
> rel#99092:LogicalProject.NONE.[](input=RelSubset#99091,store_sales=$90,$f1=IS
> TRUE(=($63, 'CA')),store_cost=$91),
> rel#99061:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z])]
> at
> org.apache.calcite.test.DruidAdapterIT.testFilterClauseNotFactoredOut1(DruidAdapterIT.java:2530)
> Caused by: java.lang.RuntimeException: Error while applying rule
> DruidAggregateProjectRule, args
> [rel#99096:LogicalAggregate.NONE.[](input=RelSubset#99095,group={},EXPR$0=SUM($0)
> FILTER $1,EXPR$1=SUM($2)),
> rel#99092:LogicalProject.NONE.[](input=RelSubset#99091,store_sales=$90,$f1=IS
> TRUE(=($63, 'CA')),store_cost=$91),
> rel#99061:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z])]
> at
> org.apache.calcite.test.DruidAdapterIT.testFilterClauseNotFactoredOut1(DruidAdapterIT.java:2530)
> Caused by: java.lang.IndexOutOfBoundsException: index (-1) must not be
> negative
> at
> org.apache.calcite.test.DruidAdapterIT.testFilterClauseNotFactoredOut1(DruidAdapterIT.java:2530)
> [ERROR]
> testFilterClauseNotFactoredOut2(org.apache.calcite.test.DruidAdapterIT) Time
> elapsed: 0.024 s <<< ERROR!
> java.sql.SQLException: Error while executing SQL "select sum("store_sales")
> filter (where "store_state" = 'CA'), sum("store_cost") from "foodmart" where
> "the_year" >= 1997": Error while applying rule DruidAggregateProjectRule,
> args
> [rel#99282:BindableAggregate.BINDABLE.[](input=RelSubset#99261,group={},EXPR$0=SUM($0)
> FILTER $1,EXPR$1=SUM($2)),
> rel#99281:BindableProject.BINDABLE.[](input=RelSubset#99279,store_sales=$90,$f1=IS
> TRUE(=($63, 'CA')),store_cost=$91),
> rel#99298:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z],filter=>=(CAST($83):BIGINT,
> 1997))]
> at
> org.apache.calcite.test.DruidAdapterIT.testFilterClauseNotFactoredOut2(DruidAdapterIT.java:2550)
> Caused by: java.lang.RuntimeException: Error while applying rule
> DruidAggregateProjectRule, args
> [rel#99282:BindableAggregate.BINDABLE.[](input=RelSubset#99261,group={},EXPR$0=SUM($0)
> FILTER $1,EXPR$1=SUM($2)),
> rel#99281:BindableProject.BINDABLE.[](input=RelSubset#99279,store_sales=$90,$f1=IS
> TRUE(=($63, 'CA')),store_cost=$91),
> rel#99298:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z],filter=>=(CAST($83):BIGINT,
> 1997))]
> at
> org.apache.calcite.test.DruidAdapterIT.testFilterClauseNotFactoredOut2(DruidAdapterIT.java:2550)
> Caused by: java.lang.IndexOutOfBoundsException: index (-1) must not be
> negative
> at
> org.apache.calcite.test.DruidAdapterIT.testFilterClauseNotFactoredOut2(DruidAdapterIT.java:2550)
> [ERROR]
> testExtractFilterWorkWithPostAggregationsWithConstant(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 16.591 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[AND(=($2, 'Bird Call'), OR(=(EXTRACT(FLAG(WEEK), $0), 10),
> =(EXTRACT(FLAG(WEEK), $0), 11)))], projects=[[$0, $2, $63, $90, $91]],
> groups=[{2}], aggs=[[SUM($3), SUM($4)]], post_projects=[[$0, 'Bird Call',
> -($1, $2)]])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[AND(=($2, 'Bird Call'), OR(=(EXTRACT(FLAG(WEEK), $0), 10),
> =(EXTRACT(FLAG(WEEK), $0), 11)))], projects=[[$63, $90, $91]], groups=[{0}],
> aggs=[[SUM($1), SUM($2)]], post_projects=[[$0, 'Bird Call', -($1, $2)]])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testExtractFilterWorkWithPostAggregationsWithConstant(DruidAdapterIT.java:2166)
> [ERROR]
> testDuplicateReferenceOnPostAggregation(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 9.426 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> groups=[{63}], aggs=[[SUM($90), SUM($91)]], post_projects=[[$0, +($1, 100),
> -(+($1, 100), $2)]], sort0=[1], dir0=[DESC]"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[$63, $90, $91]], groups=[{0}], aggs=[[SUM($1), SUM($2)]],
> post_projects=[[$0, +($1, 100), -(+($1, 100), $2)]], sort0=[1],
> dir0=[DESC])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testDuplicateReferenceOnPostAggregation(DruidAdapterIT.java:2222)
> [ERROR]
> testFilterClauseAlwaysTrueWithAggGone1(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 0.007 s <<< ERROR!
> java.sql.SQLException: Error while executing SQL "select sum("store_sales")
> filter (where 1 = 1), sum("store_cost") from "foodmart"": Error while
> applying rule DruidAggregateProjectRule, args
> [rel#135366:LogicalAggregate.NONE.[](input=RelSubset#135364,group={},EXPR$0=SUM($0)
> FILTER $1,EXPR$1=SUM($2)),
> rel#135362:LogicalProject.NONE.[](input=RelSubset#135361,store_sales=$90,$f1=true,store_cost=$91),
> rel#135302:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z])]
> at
> org.apache.calcite.test.DruidAdapterIT.testFilterClauseAlwaysTrueWithAggGone1(DruidAdapterIT.java:2406)
> Caused by: java.lang.RuntimeException: Error while applying rule
> DruidAggregateProjectRule, args
> [rel#135366:LogicalAggregate.NONE.[](input=RelSubset#135364,group={},EXPR$0=SUM($0)
> FILTER $1,EXPR$1=SUM($2)),
> rel#135362:LogicalProject.NONE.[](input=RelSubset#135361,store_sales=$90,$f1=true,store_cost=$91),
> rel#135302:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z])]
> at
> org.apache.calcite.test.DruidAdapterIT.testFilterClauseAlwaysTrueWithAggGone1(DruidAdapterIT.java:2406)
> Caused by: java.lang.IndexOutOfBoundsException: index (-1) must not be
> negative
> at
> org.apache.calcite.test.DruidAdapterIT.testFilterClauseAlwaysTrueWithAggGone1(DruidAdapterIT.java:2406)
> [ERROR] testStackedAggregateFilters(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 0.006 s <<< ERROR!
> java.sql.SQLException: Error while executing SQL "SELECT COUNT("product_id")
> filter (WHERE "state_province" = 'CA' OR "store_sales" > 100 AND "product_id"
> <> '100'), count(*) FROM "foodmart"": Error while applying rule
> DruidAggregateProjectRule, args
> [rel#161136:LogicalAggregate.NONE.[](input=RelSubset#161134,group={},EXPR$0=COUNT($0)
> FILTER $1,EXPR$1=COUNT()),
> rel#161133:LogicalProject.NONE.[](input=RelSubset#161129,product_id=$1,$f1=IS
> TRUE(OR(=($30, 'CA'), AND(>($90, 100), <>($1, '100'))))),
> rel#161081:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z])]
> at
> org.apache.calcite.test.DruidAdapterIT.testStackedAggregateFilters(DruidAdapterIT.java:4223)
> Caused by: java.lang.RuntimeException: Error while applying rule
> DruidAggregateProjectRule, args
> [rel#161136:LogicalAggregate.NONE.[](input=RelSubset#161134,group={},EXPR$0=COUNT($0)
> FILTER $1,EXPR$1=COUNT()),
> rel#161133:LogicalProject.NONE.[](input=RelSubset#161129,product_id=$1,$f1=IS
> TRUE(OR(=($30, 'CA'), AND(>($90, 100), <>($1, '100'))))),
> rel#161081:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z])]
> at
> org.apache.calcite.test.DruidAdapterIT.testStackedAggregateFilters(DruidAdapterIT.java:4223)
> Caused by: java.lang.IndexOutOfBoundsException: index (-1) must not be
> negative
> at
> org.apache.calcite.test.DruidAdapterIT.testStackedAggregateFilters(DruidAdapterIT.java:4223)
> [ERROR]
> testCountDistinctOnComplexColumn(org.apache.calcite.test.DruidAdapterIT) Time
> elapsed: 21.587 s <<< ERROR!
> java.sql.SQLException: Error while executing SQL "select sum("store_sales"),
> count(distinct "customer_id") filter (where "store_state" = 'CA') from
> "foodmart" where "the_month" = 'October'": Error while applying rule
> DruidAggregateProjectRule, args
> [rel#249987:LogicalAggregate.NONE.[](input=RelSubset#249986,group={},EXPR$0=SUM($0),EXPR$1=COUNT(DISTINCT
> $1) FILTER $2),
> rel#250153:LogicalProject.NONE.[](input=RelSubset#250074,store_sales=$90,customer_id=$20,$f2=IS
> TRUE(=($63, 'CA'))), rel#250130:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z],filter==($82,
> 'October'))]
> at
> org.apache.calcite.test.DruidAdapterIT.testCountDistinctOnComplexColumn(DruidAdapterIT.java:2992)
> Caused by: java.lang.RuntimeException: Error while applying rule
> DruidAggregateProjectRule, args
> [rel#249987:LogicalAggregate.NONE.[](input=RelSubset#249986,group={},EXPR$0=SUM($0),EXPR$1=COUNT(DISTINCT
> $1) FILTER $2),
> rel#250153:LogicalProject.NONE.[](input=RelSubset#250074,store_sales=$90,customer_id=$20,$f2=IS
> TRUE(=($63, 'CA'))), rel#250130:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z],filter==($82,
> 'October'))]
> at
> org.apache.calcite.test.DruidAdapterIT.testCountDistinctOnComplexColumn(DruidAdapterIT.java:2992)
> Caused by: java.lang.IndexOutOfBoundsException: index (-1) must not be
> negative
> at
> org.apache.calcite.test.DruidAdapterIT.testCountDistinctOnComplexColumn(DruidAdapterIT.java:2992)
> [ERROR]
> testDivideByZeroDoubleTypeNegInfinity(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 10.234 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[$63, $91]], groups=[{0}], aggs=[[SUM($1)]], post_projects=[[$0,
> /(*(-1.0, $1), 0)]], sort0=[1], dir0=[DESC])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[$63, $91]], groups=[{0}], aggs=[[SUM($1)]], post_projects=[[$0,
> /(*(-1.0:DECIMAL(2, 1), $1), 0)]], sort0=[1], dir0=[DESC])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testDivideByZeroDoubleTypeNegInfinity(DruidAdapterIT.java:2255)
> [ERROR] testGroupByAvgSumCount(org.apache.calcite.test.DruidAdapterIT) Time
> elapsed: 8.489 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> BindableProject(state_province=[$0], A=[CAST(/(CASE(=($2, 0), null, $1),
> $2)):BIGINT], S=[CASE(=($2, 0), null, $1)], C=[$3], C0=[$4])\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[$30, $89, $71]], groups=[{0}], aggs=[[$SUM0($1), COUNT($1),
> COUNT($2), COUNT()]], sort0=[0], dir0=[ASC])"
> but: was "PLAN=EnumerableInterpreter\n BindableProject(state_province=[$0],
> A=[/(CASE(=($2, 0), null:BIGINT, $1), $2)], S=[CASE(=($2, 0), null:BIGINT,
> $1)], C=[$3], C0=[$4])\n DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[$30, $89, $71]], groups=[{0}], aggs=[[$SUM0($1), COUNT($1),
> COUNT($2), COUNT()]], sort0=[0], dir0=[ASC])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testGroupByAvgSumCount(DruidAdapterIT.java:1026)
> [ERROR]
> testInterleaveBetweenAggregateAndGroupOrderByOnMetrics(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 13.798 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[$63, $2, $90, $91]], groups=[{0, 1}], aggs=[[SUM($2), SUM($3)]],
> post_projects=[[$0, $1, -($2, $3)]], sort0=[2], dir0=[ASC], fetch=[5])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> groups=[{2, 63}], aggs=[[SUM($90), SUM($91)]], post_projects=[[$1, $0, -($2,
> $3)]], sort0=[2], dir0=[ASC], fetch=[5])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testInterleaveBetweenAggregateAndGroupOrderByOnMetrics(DruidAdapterIT.java:2312)
> [ERROR]
> testOuterFilterRemainsWithAlwaysTrueClause(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 0.009 s <<< ERROR!
> java.sql.SQLException: Error while executing SQL "select sum("store_sales")
> filter (where 1 = 1), sum("store_cost") from "foodmart" where "store_city" =
> 'Seattle'": Error while applying rule DruidAggregateProjectRule, args
> [rel#233781:BindableAggregate.BINDABLE.[](input=RelSubset#233760,group={},EXPR$0=SUM($0)
> FILTER $1,EXPR$1=SUM($2)),
> rel#233780:BindableProject.BINDABLE.[](input=RelSubset#233778,store_sales=$90,$f1=true,store_cost=$91),
> rel#233797:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z],filter==($62,
> 'Seattle'))]
> at
> org.apache.calcite.test.DruidAdapterIT.testOuterFilterRemainsWithAlwaysTrueClause(DruidAdapterIT.java:2448)
> Caused by: java.lang.RuntimeException: Error while applying rule
> DruidAggregateProjectRule, args
> [rel#233781:BindableAggregate.BINDABLE.[](input=RelSubset#233760,group={},EXPR$0=SUM($0)
> FILTER $1,EXPR$1=SUM($2)),
> rel#233780:BindableProject.BINDABLE.[](input=RelSubset#233778,store_sales=$90,$f1=true,store_cost=$91),
> rel#233797:DruidQuery.BINDABLE.[](table=[foodmart,
> foodmart],intervals=[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z],filter==($62,
> 'Seattle'))]
> at
> org.apache.calcite.test.DruidAdapterIT.testOuterFilterRemainsWithAlwaysTrueClause(DruidAdapterIT.java:2448)
> Caused by: java.lang.IndexOutOfBoundsException: index (-1) must not be
> negative
> at
> org.apache.calcite.test.DruidAdapterIT.testOuterFilterRemainsWithAlwaysTrueClause(DruidAdapterIT.java:2448)
> [ERROR] testTimeFloorExpressions(org.apache.calcite.test.DruidAdapterIT) Time
> elapsed: 0.092 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[=(CAST(FLOOR(CAST($0):DATE NOT NULL, FLAG(MONTH))):DATE NOT NULL,
> 1997-01-01)], projects=[[FLOOR($0, FLAG(DAY))]], groups=[{0}], aggs=[[]],
> post_projects=[[CAST($0):TIMESTAMP(0) NOT NULL]], sort0=[0], dir0=[ASC],
> fetch=[3])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[=(FLOOR(CAST($0):DATE NOT NULL, FLAG(MONTH)), 1997-01-01)],
> projects=[[FLOOR($0, FLAG(DAY))]], groups=[{0}], aggs=[[]],
> post_projects=[[CAST($0):TIMESTAMP(0) NOT NULL]], sort0=[0], dir0=[ASC],
> fetch=[3])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testTimeFloorExpressions(DruidAdapterIT.java:3726)
> [ERROR]
> testCombinationOfValidAndNotValidFilters(org.apache.calcite.test.DruidAdapterIT)
> Time elapsed: 5.231 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "PLAN=EnumerableInterpreter\n
> DruidQuery(table=[[foodmart, foodmart]],
> intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[AND(<=(/(+(CAST($1):INTEGER, *(1, $90)), -($91, 5)), +(*(FLOOR($90),
> 25), 2)), IS TRUE(CAST(>($90, 0)):BOOLEAN), LIKE($1, '1%'), >($91, 1), <($0,
> 1997-01-02 00:00:00), =(EXTRACT(FLAG(MONTH), $0), 1), =(EXTRACT(FLAG(DAY),
> $0), 1), =(+(/(EXTRACT(FLAG(MONTH), $0), 4), 1), 1))], groups=[{}],
> aggs=[[COUNT()]])"
> but: was "PLAN=EnumerableInterpreter\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> filter=[AND(<=(/(+(CAST($1):INTEGER, *(1, $90)), -($91, 5)), +(*(FLOOR($90),
> 25), 2)), >($90, 0), LIKE($1, '1%'), >($91, 1), <($0, 1997-01-02 00:00:00),
> =(EXTRACT(FLAG(MONTH), $0), 1), =(EXTRACT(FLAG(DAY), $0), 1),
> =(+(/(EXTRACT(FLAG(MONTH), $0), 4), 1), 1))], groups=[{}],
> aggs=[[COUNT()]])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testCombinationOfValidAndNotValidFilters(DruidAdapterIT.java:3860)
> [ERROR]
> testTableQueryExtractYearQuarter(org.apache.calcite.test.DruidAdapterIT) Time
> elapsed: 9.539 s <<< FAILURE!
> java.lang.AssertionError:
> Expected: a string containing "BindableProject(QR_TIMESTAMP_OK=[$0],
> SUM_STORE_SALES=[$2], YR_TIMESTAMP_OK=[$1])\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[CAST(+(/(-(EXTRACT(FLAG(MONTH), $0), 1), 3), 1)):BIGINT NOT NULL,
> EXTRACT(FLAG(YEAR), $0), $90]], groups=[{0, 1}], aggs=[[SUM($2)]], fetch=[1])"
> but: was "PLAN=EnumerableInterpreter\n BindableProject(QR_TIMESTAMP_OK=[$0],
> SUM_STORE_SALES=[$2], YR_TIMESTAMP_OK=[$1])\n DruidQuery(table=[[foodmart,
> foodmart]], intervals=[[1900-01-09T00:00:00.000Z/2992-01-10T00:00:00.000Z]],
> projects=[[+(/(-(EXTRACT(FLAG(MONTH), $0), 1), 3), 1), EXTRACT(FLAG(YEAR),
> $0), $90]], groups=[{0, 1}], aggs=[[SUM($2)]], fetch=[1])\n\n"
> at
> org.apache.calcite.test.DruidAdapterIT.testTableQueryExtractYearQuarter(DruidAdapterIT.java:4268)
> ...
> [ERROR] Tests run: 234, Failures: 16, Errors: 6, Skipped: 0
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)