godfrey he created FLINK-23434:
----------------------------------

             Summary: Inconsistent rowtypes occur in IncrementalAggregateRule
                 Key: FLINK-23434
                 URL: https://issues.apache.org/jira/browse/FLINK-23434
             Project: Flink
          Issue Type: Bug
          Components: Table SQL / Planner
    Affects Versions: 1.13.0, 1.14.0
            Reporter: godfrey he
            Assignee: godfrey he


add the following test in IncrementalAggregateTest, and will get the following 
exception

{code:java}
  @Test
  def testSumCountWithSingleDistinctAndRetraction(): Unit = {
    val sqlQuery =
      s"""
         |SELECT
         |  b, SUM(b1), COUNT(DISTINCT b1), COUNT(1)
         |FROM(
         |   SELECT
         |     a, COUNT(b) as b, MAX(b) as b1
         |   FROM MyTable
         |   GROUP BY a
         |) GROUP BY b
       """.stripMargin
    util.verifyRelPlan(sqlQuery, ExplainDetail.CHANGELOG_MODE)
  }
{code}

{code:java}
java.lang.IllegalStateException
        at 
org.apache.flink.util.Preconditions.checkState(Preconditions.java:177)
        at 
org.apache.flink.table.planner.plan.rules.physical.stream.IncrementalAggregateRule.onMatch(IncrementalAggregateRule.scala:127)
        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:271)
        at 
org.apache.calcite.plan.hep.HepInstruction$RuleCollection.execute(HepInstruction.java:74)
        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.flink.table.planner.plan.optimize.program.FlinkHepProgram.optimize(FlinkHepProgram.scala:69)
{code}


The reason is the global agg on incremental agg does not handle retraction 
message in IncrementalAggregateRule when the query has one distinct agg 
function and count star agg function
.




--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to