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

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


The following commit(s) were added to refs/heads/master by this push:
     new 9df46caf [AURON #2050] Support UnaryMinus expression (#2051)
9df46caf is described below

commit 9df46cafa6e51000c2910889bc21c8de31693dd1
Author: yew1eb <[email protected]>
AuthorDate: Thu Mar 5 12:57:04 2026 +0800

    [AURON #2050] Support UnaryMinus expression (#2051)
    
    # Which issue does this PR close?
    
    Closes #2050
    
    # Rationale for this change
    
    # What changes are included in this PR?
    
    # Are there any user-facing changes?
    
    # How was this patch tested?
---
 .../src/test/scala/org/apache/auron/AuronExpressionSuite.scala   | 9 +++++++++
 .../main/scala/org/apache/spark/sql/auron/NativeConverters.scala | 8 ++++++++
 2 files changed, 17 insertions(+)

diff --git 
a/spark-extension-shims-spark/src/test/scala/org/apache/auron/AuronExpressionSuite.scala
 
b/spark-extension-shims-spark/src/test/scala/org/apache/auron/AuronExpressionSuite.scala
index 4bfc4f28..303a0d36 100644
--- 
a/spark-extension-shims-spark/src/test/scala/org/apache/auron/AuronExpressionSuite.scala
+++ 
b/spark-extension-shims-spark/src/test/scala/org/apache/auron/AuronExpressionSuite.scala
@@ -31,4 +31,13 @@ class AuronExpressionSuite extends AuronQueryTest with 
BaseAuronSQLSuite {
         "SELECT id <=> 2, id <=> null, flag <=> false, flag <=> null FROM t1 
WHERE NOT flag <=> true")
     }
   }
+
+  test("UnaryMinus") {
+    withTable("t1") {
+      sql("create table t1(col1 int) using parquet")
+      sql(
+        "insert into t1 values(1), (2), (3), (3), (-1), (0), (null), 
(2147483647), (-2147483648)")
+      checkSparkAnswerAndOperator("SELECT negative(col1), -(col1) FROM t1")
+    }
+  }
 }
diff --git 
a/spark-extension/src/main/scala/org/apache/spark/sql/auron/NativeConverters.scala
 
b/spark-extension/src/main/scala/org/apache/spark/sql/auron/NativeConverters.scala
index 5bc9302f..df5c0732 100644
--- 
a/spark-extension/src/main/scala/org/apache/spark/sql/auron/NativeConverters.scala
+++ 
b/spark-extension/src/main/scala/org/apache/spark/sql/auron/NativeConverters.scala
@@ -544,6 +544,14 @@ object NativeConverters extends Logging {
               .setExpr(convertExprWithFallback(child, isPruningExpr, fallback))
               .build())
         }
+      case unaryMinus: UnaryMinus =>
+        buildExprNode {
+          _.setNegative(
+            pb.PhysicalNegativeNode
+              .newBuilder()
+              .setExpr(convertExprWithFallback(unaryMinus.child, 
isPruningExpr, fallback))
+              .build())
+        }
 
       // binary ops
       case EqualTo(lhs, rhs) => buildBinaryExprNode(lhs, rhs, "Eq")

Reply via email to