Martijn Visser created FLINK-40778:
--------------------------------------

             Summary: JdbcTablePlanTest.testFilterPushdown fails against Flink 
2.4 because of the upper-case AND in the filter digest
                 Key: FLINK-40778
                 URL: https://issues.apache.org/jira/browse/FLINK-40778
             Project: Flink
          Issue Type: Bug
          Components: Connectors / JDBC
    Affects Versions: jdbc-5.0.0
            Reporter: Martijn Visser
            Assignee: Martijn Visser
             Fix For: jdbc-5.0.0


FLINK-40021 changed how pushed-down filters are joined in the plan digest, from 
and(...) to AND(...). That change is only in Flink 2.4. Since FLINK-40723 the 
weekly run builds main against 2.4-SNAPSHOT, and 
JdbcTablePlanTest.testFilterPushdown now fails there:

Expected:
TableSourceScan(table=[[default_catalog, default_database, jdbc, 
filter=[and(OR(=(id, 900001:BIGINT), >=(double_col, -1000.23:DECIMAL(6, 2))), 
OR(<>(time_col, 11:11:11), >=(double_col, -1000.23:DECIMAL(6, 2))))], 
project=[id, time_col, real_col]]], fields=[id, time_col, real_col])
 but was:
TableSourceScan(table=[[default_catalog, default_database, jdbc, 
filter=[AND(OR(=(id, 900001:BIGINT), >=(double_col, -1000.23:DECIMAL(6, 2))), 
OR(<>(time_col, 11:11:11), >=(double_col, -1000.23:DECIMAL(6, 2))))], 
project=[id, time_col, real_col]]], fields=[id, time_col, real_col])

https://github.com/apache/flink-connector-jdbc/actions/runs/35779813059/job/106922160950

Push CI still builds main against 2.1.3, 2.2.1 and 2.3.0, which use the 
lower-case digest, so one reference plan can't pass on every version. The test 
needs a reference plan for each digest, selected by Flink version.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to