This is an automated email from the ASF dual-hosted git repository.

snuyanzin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git


The following commit(s) were added to refs/heads/master by this push:
     new 80188ebf064 [FLINK-40021][table] `AND` for pushdown filters should be 
in uppercase
80188ebf064 is described below

commit 80188ebf064601f2844678c0e965e376da4e7cb7
Author: Sergey Nuyanzin <[email protected]>
AuthorDate: Tue Jun 30 13:09:50 2026 +0200

    [FLINK-40021][table] `AND` for pushdown filters should be in uppercase
---
 .../table/planner/plan/abilities/source/FilterPushDownSpec.java     | 2 +-
 .../plan/rules/logical/PushFilterInCalcIntoTableSourceRuleTest.xml  | 6 +++---
 .../plan/rules/logical/PushFilterIntoTableSourceScanRuleTest.xml    | 6 +++---
 .../flink/table/planner/plan/stream/sql/FilterableSourceTest.xml    | 2 +-
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git 
a/flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/abilities/source/FilterPushDownSpec.java
 
b/flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/abilities/source/FilterPushDownSpec.java
index 108329cea04..eab8eb4dbe6 100644
--- 
a/flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/abilities/source/FilterPushDownSpec.java
+++ 
b/flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/abilities/source/FilterPushDownSpec.java
@@ -191,7 +191,7 @@ public final class FilterPushDownSpec extends 
SourceAbilitySpecBase {
         return String.format(
                 "filter=[%s]",
                 expressionStrs.stream()
-                        .reduce((l, r) -> String.format("and(%s, %s)", l, r))
+                        .reduce((l, r) -> String.format("AND(%s, %s)", l, r))
                         .orElse(""));
     }
 
diff --git 
a/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/rules/logical/PushFilterInCalcIntoTableSourceRuleTest.xml
 
b/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/rules/logical/PushFilterInCalcIntoTableSourceRuleTest.xml
index 0e22f4d6cae..146c1c55029 100644
--- 
a/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/rules/logical/PushFilterInCalcIntoTableSourceRuleTest.xml
+++ 
b/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/rules/logical/PushFilterInCalcIntoTableSourceRuleTest.xml
@@ -212,7 +212,7 @@ LogicalProject(name=[$0], id=[$1], amount=[$2], price=[$3])
     </Resource>
     <Resource name="optimized rel plan">
       <![CDATA[
-FlinkLogicalTableSourceScan(table=[[default_catalog, default_database, 
MyTable, filter=[and(>(amount, 2), <(amount, 10))]]], fields=[name, id, amount, 
price])
+FlinkLogicalTableSourceScan(table=[[default_catalog, default_database, 
MyTable, filter=[AND(>(amount, 2), <(amount, 10))]]], fields=[name, id, amount, 
price])
 ]]>
     </Resource>
   </TestCase>
@@ -231,7 +231,7 @@ LogicalProject(name=[$0], id=[$1], amount=[$2], 
virtualField=[$3], price=[$4])
     <Resource name="optimized rel plan">
       <![CDATA[
 FlinkLogicalCalc(select=[name, id, amount, +(amount, 1) AS virtualField, 
price])
-+- FlinkLogicalTableSourceScan(table=[[default_catalog, default_database, 
VirtualTable, filter=[and(>(amount, 2), <(amount, 10))]]], fields=[name, id, 
amount, price])
++- FlinkLogicalTableSourceScan(table=[[default_catalog, default_database, 
VirtualTable, filter=[AND(>(amount, 2), <(amount, 10))]]], fields=[name, id, 
amount, price])
 ]]>
     </Resource>
   </TestCase>
@@ -248,7 +248,7 @@ LogicalProject(a=[$0], b=[$1])
     </Resource>
     <Resource name="optimized rel plan">
       <![CDATA[
-FlinkLogicalTableSourceScan(table=[[default_catalog, default_database, MTable, 
filter=[and(=(LOWER(a), _UTF-16LE'foo':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"), =(UPPER(b), _UTF-16LE'bar':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"))]]], fields=[a, b])
+FlinkLogicalTableSourceScan(table=[[default_catalog, default_database, MTable, 
filter=[AND(=(LOWER(a), _UTF-16LE'foo':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"), =(UPPER(b), _UTF-16LE'bar':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"))]]], fields=[a, b])
 ]]>
     </Resource>
   </TestCase>
diff --git 
a/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/rules/logical/PushFilterIntoTableSourceScanRuleTest.xml
 
b/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/rules/logical/PushFilterIntoTableSourceScanRuleTest.xml
index 3f68f46432f..c28a91adaa8 100644
--- 
a/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/rules/logical/PushFilterIntoTableSourceScanRuleTest.xml
+++ 
b/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/rules/logical/PushFilterIntoTableSourceScanRuleTest.xml
@@ -222,7 +222,7 @@ LogicalProject(name=[$0], id=[$1], amount=[$2], price=[$3])
     <Resource name="optimized rel plan">
       <![CDATA[
 LogicalProject(name=[$0], id=[$1], amount=[$2], price=[$3])
-+- LogicalTableScan(table=[[default_catalog, default_database, MyTable, 
filter=[and(>(amount, 2), <(amount, 10))]]])
++- LogicalTableScan(table=[[default_catalog, default_database, MyTable, 
filter=[AND(>(amount, 2), <(amount, 10))]]])
 ]]>
     </Resource>
   </TestCase>
@@ -242,7 +242,7 @@ LogicalProject(name=[$0], id=[$1], amount=[$2], 
virtualField=[$3], price=[$4])
       <![CDATA[
 LogicalProject(name=[$0], id=[$1], amount=[$2], virtualField=[$3], price=[$4])
 +- LogicalProject(name=[$0], id=[$1], amount=[$2], virtualField=[+($2, 1)], 
price=[$3])
-   +- LogicalTableScan(table=[[default_catalog, default_database, 
VirtualTable, filter=[and(>(amount, 2), <(amount, 10))]]])
+   +- LogicalTableScan(table=[[default_catalog, default_database, 
VirtualTable, filter=[AND(>(amount, 2), <(amount, 10))]]])
 ]]>
     </Resource>
   </TestCase>
@@ -260,7 +260,7 @@ LogicalProject(a=[$0], b=[$1])
     <Resource name="optimized rel plan">
       <![CDATA[
 LogicalProject(a=[$0], b=[$1])
-+- LogicalTableScan(table=[[default_catalog, default_database, MTable, 
filter=[and(=(LOWER(a), _UTF-16LE'foo':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"), =(UPPER(b), _UTF-16LE'bar':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"))]]])
++- LogicalTableScan(table=[[default_catalog, default_database, MTable, 
filter=[AND(=(LOWER(a), _UTF-16LE'foo':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"), =(UPPER(b), _UTF-16LE'bar':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"))]]])
 ]]>
     </Resource>
   </TestCase>
diff --git 
a/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/stream/sql/FilterableSourceTest.xml
 
b/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/stream/sql/FilterableSourceTest.xml
index 7f29b56ef83..b0062bc8bba 100644
--- 
a/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/stream/sql/FilterableSourceTest.xml
+++ 
b/flink-table/flink-table-planner/src/test/resources/org/apache/flink/table/planner/plan/stream/sql/FilterableSourceTest.xml
@@ -87,7 +87,7 @@ LogicalProject(name=[$0], event_time=[$1])
     </Resource>
     <Resource name="optimized exec plan">
       <![CDATA[
-TableSourceScan(table=[[default_catalog, default_database, NoWatermark, 
filter=[and(=(LOWER(name), _UTF-16LE'foo':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"), =(UPPER(name), _UTF-16LE'FOO':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"))]]], fields=[name, event_time])
+TableSourceScan(table=[[default_catalog, default_database, NoWatermark, 
filter=[AND(=(LOWER(name), _UTF-16LE'foo':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"), =(UPPER(name), _UTF-16LE'FOO':VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE"))]]], fields=[name, event_time])
 ]]>
     </Resource>
   </TestCase>

Reply via email to