This is an automated email from the ASF dual-hosted git repository. tanner pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/calcite.git
commit b94917883cc55ba5ed034e2f9a8b55e961036b63 Author: Benchao Li <[email protected]> AuthorDate: Sat May 27 13:34:46 2023 +0800 [CALCITE-5727] RelOptFixture#checkUnchanged should assert planAfter is not present Close apache/calcite#3227 --- .../org/apache/calcite/test/RelOptRulesTest.xml | 469 --------------------- .../org/apache/calcite/test/RelOptFixture.java | 5 + 2 files changed, 5 insertions(+), 469 deletions(-) diff --git a/core/src/test/resources/org/apache/calcite/test/RelOptRulesTest.xml b/core/src/test/resources/org/apache/calcite/test/RelOptRulesTest.xml index 7fb728af65..bca8313b33 100644 --- a/core/src/test/resources/org/apache/calcite/test/RelOptRulesTest.xml +++ b/core/src/test/resources/org/apache/calcite/test/RelOptRulesTest.xml @@ -114,15 +114,6 @@ LogicalProject(C=[$1]) LogicalProject(DEPTNO=[$7]) LogicalFilter(condition=[=($7, 10)]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(C=[$1]) - LogicalAggregate(group=[{0}], C=[COUNT()]) - LogicalProject(DEPTNO=[$7]) - LogicalFilter(condition=[=($7, 10)]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -672,13 +663,6 @@ group by deptno]]> LogicalAggregate(group=[{1}], EXPR$1=[SUM($2)]) LogicalAggregate(group=[{1, 7}], groups=[[{1, 7}, {1}, {7}, {}]], X=[SUM($5)]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{1}], EXPR$1=[SUM($2)]) - LogicalAggregate(group=[{1, 7}], groups=[[{1, 7}, {1}, {7}, {}]], X=[SUM($5)]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -694,13 +678,6 @@ group by deptno]]> LogicalAggregate(group=[{1}], EXPR$1=[SUM($2)]) LogicalAggregate(group=[{1, 7}], X=[COUNT(DISTINCT $5)]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{1}], EXPR$1=[SUM($2)]) - LogicalAggregate(group=[{1, 7}], X=[COUNT(DISTINCT $5)]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -716,13 +693,6 @@ group by deptno]]> LogicalAggregate(group=[{1}], EXPR$1=[AVG($2)]) LogicalAggregate(group=[{3, 7}], X=[AVG($5)]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{1}], EXPR$1=[AVG($2)]) - LogicalAggregate(group=[{3, 7}], X=[AVG($5)]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -737,13 +707,6 @@ sales.emp group by deptno, mgr) t]]> LogicalAggregate(group=[{}], EXPR$0=[SUM($2)]) LogicalAggregate(group=[{3, 7}], X=[COUNT()]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{}], EXPR$0=[SUM($2)]) - LogicalAggregate(group=[{3, 7}], X=[COUNT()]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -759,13 +722,6 @@ group by cube(mgr, deptno)]]> LogicalAggregate(group=[{0, 1}], groups=[[{0, 1}, {0}, {1}, {}]], EXPR$2=[SUM($2)]) LogicalAggregate(group=[{3, 7}], X=[COUNT()]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{0, 1}], groups=[[{0, 1}, {0}, {1}, {}]], EXPR$2=[SUM($2)]) - LogicalAggregate(group=[{3, 7}], X=[COUNT()]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -953,14 +909,6 @@ LogicalProject(EMPNO=[$0], EXPR$1=[$2], EXPR$2=[$3]) LogicalAggregate(group=[{0, 1}], EXPR$1=[MAX($2)], EXPR$2=[AVG($2)]) LogicalProject(EMPNO=[$0], DEPTNO=[$7], SAL=[$5]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EMPNO=[$0], EXPR$1=[$2], EXPR$2=[$3]) - LogicalAggregate(group=[{0, 1}], EXPR$1=[MAX($2)], EXPR$2=[AVG($2)]) - LogicalProject(EMPNO=[$0], DEPTNO=[$7], SAL=[$5]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -974,13 +922,6 @@ LogicalProject(EMPNO=[$0], EXPR$1=[$2], EXPR$2=[$3]) LogicalAggregate(group=[{0, 1}], groups=[[{0, 1}, {0}, {1}, {}]], EXPR$2=[SUM($2)]) LogicalProject(EMPNO=[$0], DEPTNO=[$7], SAL=[$5]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{0, 1}], groups=[[{0, 1}, {0}, {1}, {}]], EXPR$2=[SUM($2)]) - LogicalProject(EMPNO=[$0], DEPTNO=[$7], SAL=[$5]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -994,13 +935,6 @@ LogicalAggregate(group=[{0, 1}], groups=[[{0, 1}, {0}, {1}, {}]], EXPR$2=[SUM($2 LogicalAggregate(group=[{0}], EXPR$1=[MAX($1)]) LogicalProject(DEPTNO=[$7], SAL=[$5]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{0}], EXPR$1=[MAX($1)]) - LogicalProject(DEPTNO=[$7], SAL=[$5]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -1052,18 +986,6 @@ LogicalAggregate(group=[{0}], EXPR$1=[SUM($1)]) LogicalAggregate(group=[{0, 1}]) LogicalProject(DEPTNO=[$7], T=[2]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{0}], EXPR$1=[SUM($1)]) - LogicalUnion(all=[true]) - LogicalAggregate(group=[{0, 1}]) - LogicalProject(DEPTNO=[$7], T=[1]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalAggregate(group=[{0, 1}]) - LogicalProject(DEPTNO=[$7], T=[2]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -1523,12 +1445,6 @@ case when cast(ename as double) < 5 then 0.0 <![CDATA[ LogicalProject(T=[CASE(<(CAST(CASE(>($1, 'abc'), $1, null:VARCHAR(20))):DOUBLE, 5), 0.0:DOUBLE, CASE(IS NOT NULL(CAST(CASE(>($1, 'abc'), $1, null:VARCHAR(20))):DOUBLE), CAST(CAST(CASE(>($1, 'abc'), $1, null:VARCHAR(20))):DOUBLE):DOUBLE NOT NULL, 1.0:DOUBLE))]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(T=[CASE(<(CAST(CASE(>($1, 'abc'), $1, null:VARCHAR(20))):DOUBLE, 5), 0.0:DOUBLE, CASE(IS NOT NULL(CAST(CASE(>($1, 'abc'), $1, null:VARCHAR(20))):DOUBLE), CAST(CAST(CASE(>($1, 'abc'), $1, null:VARCHAR(20))):DOUBLE):DOUBLE NOT NULL, 1.0:DOUBLE))]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -2336,22 +2252,6 @@ LogicalSort(sort0=[$0], dir0=[ASC]) LogicalAggregate(group=[{0}], EXPR$0=[AVG($1)]) LogicalProject(EMPNO=[$0], SAL=[$5]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalSort(sort0=[$0], dir0=[ASC]) - LogicalProject(EMPNO=[$0]) - LogicalProject(EMPNO=[$0], ENAME=[$1], JOB=[$2], MGR=[$3], HIREDATE=[$4], SAL=[$5], COMM=[$6], DEPTNO=[$7], SLACKER=[$8], DEPTNO0=[$9], NAME=[$10], EMPNO0=[CAST($11):INTEGER], EXPR$0=[CAST($12):INTEGER]) - LogicalJoin(condition=[AND(=($0, $11), >($5, $12))], joinType=[inner]) - LogicalJoin(condition=[=($7, $9)], joinType=[inner]) - LogicalFilter(condition=[<($7, 10)]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalFilter(condition=[<($0, 15)]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) - LogicalAggregate(group=[{0}], EXPR$0=[AVG($1)]) - LogicalProject(EMPNO=[$0], SAL=[$5]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -2935,13 +2835,6 @@ LogicalAggregate(group=[{0}], EXPR$1=[SUM($3)], EXPR$2=[MIN($4)], EXPR$3=[COUNT( LogicalFilter(condition=[false]) LogicalAggregate(group=[{}], agg#0=[COUNT()]) LogicalTableScan(table=[[scott, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalFilter(condition=[false]) - LogicalAggregate(group=[{}], agg#0=[COUNT()]) - LogicalTableScan(table=[[scott, EMP]]) ]]> </Resource> </TestCase> @@ -2995,12 +2888,6 @@ LogicalValues(tuples=[[]]) <![CDATA[ LogicalAggregate(group=[{}], EXPR$0=[SUM($0)]) LogicalValues(tuples=[[]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{}], EXPR$0=[SUM($0)]) - LogicalValues(tuples=[[]]) ]]> </Resource> </TestCase> @@ -5327,14 +5214,6 @@ LogicalProject(DEPTNO=[$7]) LogicalJoin(condition=[=(CASE(IS NOT NULL($1), $1, $10), 'abc')], joinType=[inner]) LogicalTableScan(table=[[CATALOG, SALES, EMPNULLABLES]]) LogicalTableScan(table=[[CATALOG, SALES, EMPNULLABLES]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$7]) - LogicalJoin(condition=[=(CASE(IS NOT NULL($1), $1, $10), 'abc')], joinType=[inner]) - LogicalTableScan(table=[[CATALOG, SALES, EMPNULLABLES]]) - LogicalTableScan(table=[[CATALOG, SALES, EMPNULLABLES]]) ]]> </Resource> </TestCase> @@ -5349,14 +5228,6 @@ LogicalProject(DEPTNO=[$7]) LogicalJoin(condition=[=(CASE(IS NOT NULL($1), $1, $10), 'abc')], joinType=[inner]) LogicalTableScan(table=[[CATALOG, SALES, EMPNULLABLES]]) LogicalTableScan(table=[[CATALOG, SALES, EMPNULLABLES]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$7]) - LogicalJoin(condition=[=(CASE(IS NOT NULL($1), $1, $10), 'abc')], joinType=[inner]) - LogicalTableScan(table=[[CATALOG, SALES, EMPNULLABLES]]) - LogicalTableScan(table=[[CATALOG, SALES, EMPNULLABLES]]) ]]> </Resource> </TestCase> @@ -5588,15 +5459,6 @@ LogicalProject(DEPTNO=[$0], NAME=[$1], NAME0=[$2], EXPR$1=[$3]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) LogicalProject(NAME=[$1], EXPR$1=[1]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$0], NAME=[$1], NAME0=[$2], EXPR$1=[$3]) - LogicalJoin(condition=[=($1, $2)], joinType=[left]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) - LogicalProject(NAME=[$1], EXPR$1=[1]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -5614,15 +5476,6 @@ LogicalProject(NAME=[$0], EXPR$1=[$1], DEPTNO=[$2], NAME0=[$3]) LogicalProject(NAME=[$1], EXPR$1=[1]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(NAME=[$0], EXPR$1=[$1], DEPTNO=[$2], NAME0=[$3]) - LogicalJoin(condition=[=($0, $3)], joinType=[right]) - LogicalProject(NAME=[$1], EXPR$1=[1]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -5642,19 +5495,6 @@ LogicalProject(DEPTNO=[$0], NAME=[$1], NAME0=[$3], EXPR$1=[$4]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) LogicalProject(NAME=[$0], EXPR$1=[IS NOT NULL($1)]) LogicalValues(tuples=[[{ 2, null }, { 2, 1 }]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$0], NAME=[$1], NAME0=[$2], EXPR$1=[$3]) - LogicalJoin(condition=[=($1, $2)], joinType=[left]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) - LogicalProject(NAME=[$0], EXPR$1=[IS NOT NULL($1)]) - LogicalUnion(all=[true]) - LogicalProject(EXPR$0=[2], EXPR$1=[null:INTEGER]) - LogicalValues(tuples=[[{ 0 }]]) - LogicalProject(EXPR$0=[2], EXPR$1=[1]) - LogicalValues(tuples=[[{ 0 }]]) ]]> </Resource> </TestCase> @@ -5672,15 +5512,6 @@ LogicalProject(DEPTNO=[$0], NAME=[$1], NAME0=[$2], EXPR$1=[$3]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) LogicalProject(NAME=[$1], EXPR$1=[+(1, 1)]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$0], NAME=[$1], NAME0=[$2], EXPR$1=[$3]) - LogicalJoin(condition=[=($1, $2)], joinType=[left]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) - LogicalProject(NAME=[$1], EXPR$1=[+(1, 1)]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -5699,16 +5530,6 @@ LogicalProject(NAME=[$0], EXPR$1=[$1], NAME0=[$2], EXPR$10=[$3]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) LogicalProject(NAME=[$1], EXPR$1=[1]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(NAME=[$0], EXPR$1=[$1], NAME0=[$2], EXPR$10=[$3]) - LogicalJoin(condition=[=($0, $2)], joinType=[full]) - LogicalProject(NAME=[$1], EXPR$1=[1]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) - LogicalProject(NAME=[$1], EXPR$1=[1]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -6824,13 +6645,6 @@ LogicalProject(EMPNO=[$0], ENAME=[$1], JOB=[$2], MGR=[$3], HIREDATE=[$4], SAL=[$ LogicalAggregate(group=[{0}], EXPR$1=[MAX($0)], EXPR$2=[AVG($1)], EXPR$3=[MIN($0)]) LogicalProject(NAME=[$1], DEPTNO=[$0]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{0}], EXPR$1=[MAX($0)], EXPR$2=[AVG($1)], EXPR$3=[MIN($0)]) - LogicalProject(NAME=[$1], DEPTNO=[$0]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -6854,13 +6668,6 @@ LogicalProject(USER=[USER]) LogicalAggregate(group=[{0}], EXPR$1=[SUM($1)]) LogicalProject(NAME=[$1], DEPTNO=[$0]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{0}], EXPR$1=[SUM($1)]) - LogicalProject(NAME=[$1], DEPTNO=[$0]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -6875,14 +6682,6 @@ LogicalProject(EXPR$0=[1]) LogicalJoin(condition=[AND(=($7, $9), IS NOT NULL($1))], joinType=[inner]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EXPR$0=[1]) - LogicalJoin(condition=[AND(=($7, $9), IS NOT NULL($1))], joinType=[inner]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -7113,17 +6912,6 @@ LogicalProject(C_NATIONKEY=[$1], FAKE_COL2=[$2]) Uncollect LogicalProject(FAKE_COL=[$cor0.FAKE_COL]) LogicalValues(tuples=[[{ 0 }]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(C_NATIONKEY=[$1], FAKE_COL2=[$2]) - LogicalCorrelate(correlation=[$cor0], joinType=[inner], requiredColumns=[{0}]) - LogicalTableScan(table=[[CATALOG, SALES, CUSTOMER]]) - LogicalProject(A=[$0]) - Uncollect - LogicalProject(FAKE_COL=[$cor0.FAKE_COL]) - LogicalValues(tuples=[[{ 0 }]]) ]]> </Resource> </TestCase> @@ -7341,16 +7129,6 @@ LogicalProject(DEPTNO=[$7], DEPTNO0=[$9]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$7], DEPTNO0=[$9]) - LogicalJoin(condition=[=($7, $11)], joinType=[left]) - LogicalJoin(condition=[=($7, $9)], joinType=[left]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -7369,16 +7147,6 @@ LogicalProject(DEPTNO=[$7], DEPTNO0=[$18]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$7], DEPTNO0=[$18]) - LogicalJoin(condition=[=($7, $18)], joinType=[left]) - LogicalJoin(condition=[=($7, $16)], joinType=[left]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -7415,14 +7183,6 @@ LogicalProject(DEPTNO=[$7]) LogicalJoin(condition=[=($7, $16)], joinType=[left]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$7]) - LogicalJoin(condition=[=($7, $16)], joinType=[left]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -7438,14 +7198,6 @@ LogicalProject(DEPTNO=[$7], NAME=[$10]) LogicalJoin(condition=[=($7, $9)], joinType=[left]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$7], NAME=[$10]) - LogicalJoin(condition=[=($7, $9)], joinType=[left]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -7482,14 +7234,6 @@ LogicalProject(DEPTNO=[$16]) LogicalJoin(condition=[=($7, $16)], joinType=[right]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$16]) - LogicalJoin(condition=[=($7, $16)], joinType=[right]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -7505,14 +7249,6 @@ LogicalProject(DEPTNO=[$9], NAME=[$1]) LogicalJoin(condition=[=($9, $0)], joinType=[right]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$9], NAME=[$1]) - LogicalJoin(condition=[=($9, $0)], joinType=[right]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -7587,17 +7323,6 @@ LogicalProject(DEPTNO=[$0]) LogicalAggregate(group=[{}], DUMMY=[COUNT()]) LogicalProject(EMPNO=[$0]) LogicalTableScan(table=[[scott, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$0]) - LogicalJoin(condition=[true], joinType=[inner]) - LogicalProject(DEPTNO=[$0]) - LogicalTableScan(table=[[scott, DEPT]]) - LogicalAggregate(group=[{}], DUMMY=[COUNT()]) - LogicalProject(EMPNO=[$0]) - LogicalTableScan(table=[[scott, EMP]]) ]]> </Resource> </TestCase> @@ -8618,16 +8343,6 @@ LogicalAggregate(group=[{0, 9}]) LogicalFilter(condition=[=($0, 10)]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{0, 9}]) - LogicalJoin(condition=[<($0, $9)], joinType=[inner]) - LogicalProject(EMPNO=[$0], ENAME=[$1], JOB=[$2], MGR=[$3], HIREDATE=[$4], SAL=[$5], COMM=[$6], DEPTNO=[$7], SLACKER=[$8]) - LogicalFilter(condition=[=($0, 10)]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -9586,14 +9301,6 @@ LogicalAggregate(group=[{}], EXPR$0=[COUNT(DISTINCT $0)]) LogicalJoin(condition=[=($2, $10)], joinType=[inner]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{}], EXPR$0=[COUNT(DISTINCT $5)]) - LogicalJoin(condition=[=($2, $10)], joinType=[inner]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -9656,15 +9363,6 @@ LogicalProject(DEPTNO=[$0]) LogicalAggregate(group=[{0}], agg#0=[COUNT()]) LogicalProject(DEPTNO=[$7]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$0]) - LogicalFilter(condition=[>($1, 1)]) - LogicalAggregate(group=[{0}], agg#0=[COUNT()]) - LogicalProject(DEPTNO=[$7]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -9711,15 +9409,6 @@ LogicalProject(DDEPTNO=[$0], DNAME=[$1], C=[$2]) LogicalFilter(condition=[=($1, 'Charlie')]) LogicalAggregate(group=[{0, 1}], groups=[[{0, 1}, {0}, {}]], C=[COUNT()]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DDEPTNO=[$0], DNAME=[$1], C=[$2]) - LogicalProject(DDEPTNO=[CASE($2, null, $0)], DNAME=[CASE($3, null, $1)], C=[$4]) - LogicalFilter(condition=[=(CASE($3, null, $1), 'Charlie')]) - LogicalAggregate(group=[{0, 1}], groups=[[{0, 1}, {0}, {}]], indicator=[true], C=[COUNT()]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -9890,14 +9579,6 @@ LogicalProject(ENAME=[$0], R=[$1]) LogicalFilter(condition=[<($1, 2)]) LogicalProject(ENAME=[$1], R=[RANK() OVER (PARTITION BY $7 ORDER BY $5)]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(ENAME=[$0], R=[$1]) - LogicalFilter(condition=[<($1, 2)]) - LogicalProject(ENAME=[$1], R=[RANK() OVER (PARTITION BY $7 ORDER BY $5 RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -9915,14 +9596,6 @@ LogicalProject(ENAME=[$0], R=[$1]) LogicalFilter(condition=[<($1, 2)]) LogicalProject(ENAME=[$1], R=[+(RANK() OVER (PARTITION BY $7 ORDER BY $5), 1)]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(ENAME=[$0], R=[$1]) - LogicalFilter(condition=[<($1, 2)]) - LogicalProject(ENAME=[$1], R=[+(RANK() OVER (PARTITION BY $7 ORDER BY $5 RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW), 1)]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -10238,13 +9911,6 @@ and upper(ename) = 'FOO']]> LogicalProject(X=[+($0, $7)], ENAME=[$1], JOB=[$2], MGR=[$3], HIREDATE=[$4], SAL=[$5], COMM=[$6], SLACKER=[$8]) LogicalFilter(condition=[AND(=($5, *(10, $6)), =(UPPER($1), 'FOO'))]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EXPR$0=[+($0, $7)], ENAME=[$1], JOB=[$2], MGR=[$3], HIREDATE=[$4], SAL=[$5], COMM=[$6], SLACKER=[$8]) - LogicalFilter(condition=[AND(=($5, *(10, $6)), =(UPPER($1), 'FOO'))]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -11627,12 +11293,6 @@ from (values (2, cast(null as integer))) as t(p0, p1)]]> <![CDATA[ LogicalProject(EXPR$0=[false]) LogicalValues(tuples=[[{ 0 }]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EXPR$0=[false]) - LogicalValues(tuples=[[{ 0 }]]) ]]> </Resource> </TestCase> @@ -11934,14 +11594,6 @@ LogicalProject(SAL=[$0], T=[$1]) LogicalFilter(condition=[>($1, 2018-01-01 00:00:00)]) LogicalProject(SAL=[$5], T=[CURRENT_TIMESTAMP]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(SAL=[$0], T=[$1]) - LogicalFilter(condition=[>($1, 2018-01-01 00:00:00)]) - LogicalProject(SAL=[$5], T=[CURRENT_TIMESTAMP]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -12210,13 +11862,6 @@ LogicalProject(USER=['happyCalciteUser':VARCHAR(2000)]) LogicalProject(COL1=[$0]) LogicalFilter(condition=[NOT($0)]) LogicalValues(tuples=[[{ false }, { true }]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(COL1=[$0]) - LogicalFilter(condition=[NOT($0)]) - LogicalValues(tuples=[[{ false }, { true }]]) ]]> </Resource> </TestCase> @@ -12248,14 +11893,6 @@ LogicalProject(SAL=[$5]) <![CDATA[select * from (select (case when sal > 1000 then null else false end) as caseCol from emp) where NOT(caseCol)]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(CASECOL=[$0]) - LogicalFilter(condition=[NOT($0)]) - LogicalProject(CASECOL=[CASE(>($5, 1000), null, false)]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> </Resource> <Resource name="planBefore"> <![CDATA[ @@ -12276,14 +11913,6 @@ LogicalProject(EXPR$0=[CAST(2):INTEGER]) LogicalJoin(condition=[true], joinType=[left]) LogicalValues(tuples=[[{ 1 }]]) LogicalValues(tuples=[[{ 1 }]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EXPR$0=[CAST(2):INTEGER]) - LogicalJoin(condition=[true], joinType=[left]) - LogicalValues(tuples=[[{ 1 }]]) - LogicalValues(tuples=[[{ 1 }]]) ]]> </Resource> </TestCase> @@ -12296,13 +11925,6 @@ LogicalProject(EXPR$0=[CAST(2):INTEGER]) LogicalAggregate(group=[{0, 1, 2}]) LogicalProject(DEPTNO=[$7], ENAME=[$1], EXPR$2=[null:VARCHAR(20)]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalAggregate(group=[{0, 1, 2}]) - LogicalProject(DEPTNO=[$7], ENAME=[$1], EXPR$2=[null]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -13827,16 +13449,6 @@ LogicalProject(EMPNO=[$0], ENAME=[$1], JOB=[$2], MGR=[$3], HIREDATE=[$4], SAL=[$ LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalProject(DEPTNO=[$0], NAME=[$1]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EMPNO=[$0], ENAME=[$1], JOB=[$2], MGR=[$3], HIREDATE=[$4], SAL=[$5], COMM=[$6], DEPTNO=[$7], SLACKER=[$8], DEPTNO0=[$9], NAME=[$10]) - LogicalSort(sort0=[$5], sort1=[$10], dir0=[ASC], dir1=[ASC], fetch=[10]) - LogicalJoin(condition=[=($7, $9)], joinType=[left]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalProject(DEPTNO=[$0], NAME=[$1]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -13883,17 +13495,6 @@ LogicalProject(EMPNO=[$0], ENAME=[$1], JOB=[$2], MGR=[$3], HIREDATE=[$4], SAL=[$ LogicalProject(DEPTNO=[$0], NAME=[$1]) LogicalSort(fetch=[10]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EMPNO=[$0], ENAME=[$1], JOB=[$2], MGR=[$3], HIREDATE=[$4], SAL=[$5], COMM=[$6], DEPTNO=[$7], SLACKER=[$8], DEPTNO0=[$9], NAME=[$10]) - LogicalSort(fetch=[10]) - LogicalJoin(condition=[=($7, $9)], joinType=[right]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalProject(DEPTNO=[$0], NAME=[$1]) - LogicalSort(fetch=[10]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -13934,15 +13535,6 @@ LogicalProject(DEPTNO=[$0], EMPNO=[$2]) LogicalJoin(condition=[=($0, $9)], joinType=[left]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(DEPTNO=[$0], EMPNO=[$2]) - LogicalSort(sort0=[$0], dir0=[ASC], offset=[1]) - LogicalJoin(condition=[=($0, $9)], joinType=[left]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -14001,13 +13593,6 @@ LogicalProject(DEPTNO=[$0]) LogicalSort(sort0=[$1], dir0=[ASC], offset=[1]) LogicalProject(DEPTNO=[$0], EXPR$1=[CAST($0):VARCHAR(10) NOT NULL]) LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalSort(sort0=[$1], dir0=[ASC], offset=[1]) - LogicalProject(DEPTNO=[$0], EXPR$1=[CAST($0):VARCHAR(10) NOT NULL]) - LogicalTableScan(table=[[CATALOG, SALES, DEPT]]) ]]> </Resource> </TestCase> @@ -14549,14 +14134,6 @@ LogicalProject(EXPR$0=[1]) LogicalJoin(condition=[=($7, $16)], joinType=[inner]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EXPR$0=[1]) - LogicalJoin(condition=[=($7, $16)], joinType=[inner]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -14595,15 +14172,6 @@ LogicalProject(EXPR$0=[1]) LogicalJoin(condition=[=($7, $16)], joinType=[full]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EXPR$0=[1]) - LogicalFilter(condition=[AND(>($7, 7), >($16, 9))]) - LogicalJoin(condition=[=($7, $16)], joinType=[full]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -14741,15 +14309,6 @@ LogicalProject(EXPR$0=[1]) LogicalFilter(condition=[OR(SEARCH($7, Sarg[7, 9]), >($6, 10))]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EXPR$0=[1]) - LogicalJoin(condition=[=($7, $16)], joinType=[inner]) - LogicalFilter(condition=[OR(SEARCH($7, Sarg[7, 9]), >($6, 10))]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -14766,16 +14325,6 @@ LogicalProject(EXPR$0=[1]) LogicalFilter(condition=[>($7, 7)]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EXPR$0=[1]) - LogicalJoin(condition=[=($0, $8)], joinType=[inner]) - LogicalProject(DEPTNO=[$6]) - LogicalFilter(condition=[>($7, 7)]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> @@ -14972,24 +14521,6 @@ LogicalProject(EXPR$0=[1]) LogicalFilter(condition=[>($7, 1)]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) LogicalTableScan(table=[[CATALOG, SALES, EMP]]) -]]> - </Resource> - <Resource name="planAfter"> - <![CDATA[ -LogicalProject(EXPR$0=[1]) - LogicalJoin(condition=[=($1, $9)], joinType=[inner]) - LogicalUnion(all=[true]) - LogicalUnion(all=[true]) - LogicalProject(EMPNO=[$0], DEPTNO=[$7]) - LogicalFilter(condition=[OR(>($7, 7), <($0, 10))]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalProject(EMPNO=[$0], DEPTNO=[$7]) - LogicalFilter(condition=[OR(>($7, 10), <($0, $7))]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalProject(EMPNO=[$0], DEPTNO=[$7]) - LogicalFilter(condition=[>($7, 1)]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) - LogicalTableScan(table=[[CATALOG, SALES, EMP]]) ]]> </Resource> </TestCase> diff --git a/testkit/src/main/java/org/apache/calcite/test/RelOptFixture.java b/testkit/src/main/java/org/apache/calcite/test/RelOptFixture.java index 7045d27435..e51bf159bf 100644 --- a/testkit/src/main/java/org/apache/calcite/test/RelOptFixture.java +++ b/testkit/src/main/java/org/apache/calcite/test/RelOptFixture.java @@ -392,6 +392,11 @@ public class RelOptFixture { final RelNode relAfter = after.apply(this, r4); final String planAfter = NL + RelOptUtil.toString(relAfter); if (unchanged) { + final String expandedPlanAfter = diffRepos.expand("planAfter", "${planAfter}"); + if (!"${planAfter}".equals(expandedPlanAfter)) { + throw new AssertionError("Expected planAfter must not be present when using unchanged=true " + + "or calling checkUnchanged."); + } assertThat(planAfter, is(planBefore)); } else { diffRepos.assertEquals("planAfter", "${planAfter}", planAfter);
