Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.12.2
Description
The test case to reproduce the issue:
@Test public void test() throws Exception { tableEnv.executeSql("create table foo(x int,y int)"); tableEnv.executeSql("create table bar(i int,s string)"); System.out.println(tableEnv.explainSql("select (select count(x)-1 from foo where foo.y=bar.i) from bar")); }
Error stack trace is:
java.lang.AssertionError: Cannot add expression of different type to set: set type is RecordType(BIGINT NOT NULL $f0) NOT NULL expression type is RecordType(BIGINT $f0) NOT NULL set is rel#94:LogicalAggregate.NONE.any.[](input=HepRelVertex#93,group={},agg#0=SINGLE_VALUE($0)) expression is LogicalProject($f0=[CAST(-($0, 1)):BIGINT]) LogicalAggregate(group=[{}], agg#0=[COUNT($0)]) LogicalProject(x=[$0]) LogicalFilter(condition=[=($1, $cor0.i)]) LogicalTableScan(table=[[test-catalog, default, foo]]) at org.apache.calcite.plan.RelOptUtil.verifyTypeEquivalence(RelOptUtil.java:381) at org.apache.calcite.plan.hep.HepRuleCall.transformTo(HepRuleCall.java:58) at org.apache.calcite.plan.RelOptRuleCall.transformTo(RelOptRuleCall.java:268) at org.apache.calcite.plan.RelOptRuleCall.transformTo(RelOptRuleCall.java:283) at org.apache.calcite.sql2rel.RelDecorrelator$RemoveSingleAggregateRule.onMatch(RelDecorrelator.java:1881) at org.apache.calcite.plan.AbstractRelOptPlanner.fireRule(AbstractRelOptPlanner.java:333) at org.apache.calcite.plan.hep.HepPlanner.applyRule(HepPlanner.java:542) at org.apache.calcite.plan.hep.HepPlanner.applyRules(HepPlanner.java:407) at org.apache.calcite.plan.hep.HepPlanner.executeInstruction(HepPlanner.java:243) at org.apache.calcite.plan.hep.HepInstruction$RuleInstance.execute(HepInstruction.java:127) at org.apache.calcite.plan.hep.HepPlanner.executeProgram(HepPlanner.java:202) at org.apache.calcite.plan.hep.HepPlanner.findBestExp(HepPlanner.java:189) at org.apache.calcite.sql2rel.RelDecorrelator.removeCorrelationViaRule(RelDecorrelator.java:346) at org.apache.calcite.sql2rel.RelDecorrelator.decorrelateQuery(RelDecorrelator.java:192) at org.apache.calcite.sql2rel.RelDecorrelator.decorrelateQuery(RelDecorrelator.java:169) at org.apache.flink.table.planner.plan.optimize.program.FlinkDecorrelateProgram.optimize(FlinkDecorrelateProgram.scala:41)
Attachments
Issue Links
- links to