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

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


The following commit(s) were added to refs/heads/master by this push:
     new 9f379f0b8268 [SPARK-55868][SQL][TESTS] Fix Predicate Pushdown for 
InMemoryTable for V2Filters
9f379f0b8268 is described below

commit 9f379f0b826818d53e2248310b014148106f1aa0
Author: Szehon Ho <[email protected]>
AuthorDate: Sat Mar 7 10:29:36 2026 -0800

    [SPARK-55868][SQL][TESTS] Fix Predicate Pushdown for InMemoryTable for 
V2Filters
    
    ### What changes were proposed in this pull request?
    Fix some Predicate (ie V2 Filter) name match in the filter pushdown code 
(for the test table supporting V2Filter of InMemoryDataSource for DSV2)
    
    ### Why are the changes needed?
    These Predicate names are not matching, and no filters are accepted by this 
test table.  This was found in https://github.com/apache/spark/pull/54459
    
    ### Does this PR introduce _any_ user-facing change?
    No, tests only
    
    ### How was this patch tested?
    Running affect tests
    
    ### Was this patch authored or co-authored using generative AI tooling?
    Yes, cursor
    
    Closes #54666 from szehon-ho/partition_test_fix.
    
    Authored-by: Szehon Ho <[email protected]>
    Signed-off-by: Dongjoon Hyun <[email protected]>
---
 .../spark/sql/connector/catalog/InMemoryTableWithV2Filter.scala   | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git 
a/sql/catalyst/src/test/scala/org/apache/spark/sql/connector/catalog/InMemoryTableWithV2Filter.scala
 
b/sql/catalyst/src/test/scala/org/apache/spark/sql/connector/catalog/InMemoryTableWithV2Filter.scala
index 7c962ca1678f..f3559c84080a 100644
--- 
a/sql/catalyst/src/test/scala/org/apache/spark/sql/connector/catalog/InMemoryTableWithV2Filter.scala
+++ 
b/sql/catalyst/src/test/scala/org/apache/spark/sql/connector/catalog/InMemoryTableWithV2Filter.scala
@@ -155,10 +155,10 @@ object InMemoryTableWithV2Filter {
           } else {
             value == attrVal
           }
-        case p: Predicate if p.name().equals("IS NULL") =>
+        case p: Predicate if p.name().equals("IS_NULL") =>
           val attr = p.children()(0).toString
           null == InMemoryBaseTable.extractValue(attr, partitionNames, 
partValues)
-        case p: Predicate if p.name().equals("IS NOT NULL") =>
+        case p: Predicate if p.name().equals("IS_NOT_NULL") =>
           val attr = p.children()(0).toString
           null != InMemoryBaseTable.extractValue(attr, partitionNames, 
partValues)
         case p: Predicate if p.name().equals("ALWAYS_TRUE") => true
@@ -172,8 +172,8 @@ object InMemoryTableWithV2Filter {
     predicates.flatMap(splitAnd).forall {
       case p: Predicate if p.name().equals("=") => true
       case p: Predicate if p.name().equals("<=>") => true
-      case p: Predicate if p.name().equals("IS NULL") => true
-      case p: Predicate if p.name().equals("IS NOT NULL") => true
+      case p: Predicate if p.name().equals("IS_NULL") => true
+      case p: Predicate if p.name().equals("IS_NOT_NULL") => true
       case p: Predicate if p.name().equals("ALWAYS_TRUE") => true
       case _ => false
     }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to