You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "Danny Chen (Jira)" <ji...@apache.org> on 2020/10/16 02:20:00 UTC

[jira] [Created] (FLINK-19668) Fix the plan regression by Calcite upgrade to 1.26

Danny Chen created FLINK-19668:
----------------------------------

             Summary: Fix the plan regression by Calcite upgrade to 1.26
                 Key: FLINK-19668
                 URL: https://issues.apache.org/jira/browse/FLINK-19668
             Project: Flink
          Issue Type: Bug
          Components: API / Core
    Affects Versions: 1.11.3
            Reporter: Danny Chen


See org.apache.flink.table.plan.TimeIndicatorConversionTest.testUnion,

{code:java}
@Test
  def testUnion(): Unit = {
    val util = streamTestUtil()
    val t = util.addTable[(Long, Long, Int)]("MyTable", 'rowtime.rowtime, 'long, 'int)

    val result = t.unionAll(t).select('rowtime)

    val expected = unaryNode(
      "DataStreamCalc",
      binaryNode(
        "DataStreamUnion",
        streamTableNode(t),
        streamTableNode(t),
        term("all", "true"),
        term("union all", "rowtime, long, int")
      ),
      term("select", "rowtime")
    )

    util.verifyTable(result, expected)
  }
{code}

The regression is because the new plan has same cost with the old, thus, the old was not picked as the best.



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