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

wenchen 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 632e681f120f [SPARK-51820][SQL][FOLLOWUP] Fix `origin` for 
`UnresolvedOrdinal`
632e681f120f is described below

commit 632e681f120fe736652fc66de923b10f7ba76835
Author: Mihailo Timotic <mihailo.timo...@databricks.com>
AuthorDate: Wed Apr 23 21:57:06 2025 +0800

    [SPARK-51820][SQL][FOLLOWUP] Fix `origin` for `UnresolvedOrdinal`
    
    ### What changes were proposed in this pull request?
    This is a followup to https://github.com/apache/spark/pull/50606 to fix the 
origin and context of newly created `UnresolvedOrdinal`.
    
    ### Why are the changes needed?
    Origin and context of `UnresolvedOrdinal` should be the same as for the 
original `Literal`.
    
    ### Does this PR introduce _any_ user-facing change?
    No
    
    ### How was this patch tested?
    Existing tests.
    
    ### Was this patch authored or co-authored using generative AI tooling?
    No
    
    Closes #50676 from mihailotim-db/mihailotim-db/fix_origin.
    
    Authored-by: Mihailo Timotic <mihailo.timo...@databricks.com>
    Signed-off-by: Wenchen Fan <wenc...@databricks.com>
---
 .../spark/sql/catalyst/parser/AstBuilder.scala     |  3 +-
 .../analyzer-results/group-by-ordinal.sql.out      | 40 +++++++++++-----------
 .../postgreSQL/select_implicit.sql.out             |  4 +--
 .../udf/postgreSQL/udf-select_implicit.sql.out     |  4 +--
 .../sql-tests/results/group-by-ordinal.sql.out     | 40 +++++++++++-----------
 .../results/postgreSQL/select_implicit.sql.out     |  4 +--
 .../results/udaf/udaf-group-by-ordinal.sql.out     | 28 +++++++--------
 .../udf/postgreSQL/udf-select_implicit.sql.out     |  4 +--
 8 files changed, 64 insertions(+), 63 deletions(-)

diff --git 
a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/parser/AstBuilder.scala
 
b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/parser/AstBuilder.scala
index 0456f0e57d2b..d7d8f9d3d866 100644
--- 
a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/parser/AstBuilder.scala
+++ 
b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/parser/AstBuilder.scala
@@ -6615,7 +6615,8 @@ class AstBuilder extends DataTypeAstBuilder
   private def replaceIntegerLiteralWithOrdinal(
       expression: Expression,
       canReplaceWithOrdinal: Boolean = true) = expression match {
-    case Literal(value: Int, IntegerType) if canReplaceWithOrdinal => 
UnresolvedOrdinal(value)
+    case literal @ Literal(value: Int, IntegerType) if canReplaceWithOrdinal =>
+      CurrentOrigin.withOrigin(literal.origin) { UnresolvedOrdinal(value) }
     case other => other
   }
 
diff --git 
a/sql/core/src/test/resources/sql-tests/analyzer-results/group-by-ordinal.sql.out
 
b/sql/core/src/test/resources/sql-tests/analyzer-results/group-by-ordinal.sql.out
index c659fa2bcbb4..430e645040c2 100644
--- 
a/sql/core/src/test/resources/sql-tests/analyzer-results/group-by-ordinal.sql.out
+++ 
b/sql/core/src/test/resources/sql-tests/analyzer-results/group-by-ordinal.sql.out
@@ -120,9 +120,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 23,
+    "startIndex" : 32,
     "stopIndex" : 33,
-    "fragment" : "group by -1"
+    "fragment" : "-1"
   } ]
 }
 
@@ -141,9 +141,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 23,
+    "startIndex" : 32,
     "stopIndex" : 32,
-    "fragment" : "group by 0"
+    "fragment" : "0"
   } ]
 }
 
@@ -162,9 +162,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 23,
+    "startIndex" : 32,
     "stopIndex" : 32,
-    "fragment" : "group by 3"
+    "fragment" : "3"
   } ]
 }
 
@@ -183,9 +183,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 31,
+    "startIndex" : 40,
     "stopIndex" : 40,
-    "fragment" : "group by 3"
+    "fragment" : "3"
   } ]
 }
 
@@ -204,9 +204,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 35,
+    "startIndex" : 44,
     "stopIndex" : 44,
-    "fragment" : "group by 3"
+    "fragment" : "3"
   } ]
 }
 
@@ -401,9 +401,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 33,
+    "startIndex" : 45,
     "stopIndex" : 46,
-    "fragment" : "group by a, -1"
+    "fragment" : "-1"
   } ]
 }
 
@@ -422,9 +422,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 33,
+    "startIndex" : 45,
     "stopIndex" : 45,
-    "fragment" : "group by a, 3"
+    "fragment" : "3"
   } ]
 }
 
@@ -443,9 +443,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 33,
-    "stopIndex" : 52,
-    "fragment" : "group by cube(-1, 2)"
+    "startIndex" : 47,
+    "stopIndex" : 48,
+    "fragment" : "-1"
   } ]
 }
 
@@ -464,9 +464,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 33,
-    "stopIndex" : 51,
-    "fragment" : "group by cube(1, 3)"
+    "startIndex" : 50,
+    "stopIndex" : 50,
+    "fragment" : "3"
   } ]
 }
 
diff --git 
a/sql/core/src/test/resources/sql-tests/analyzer-results/postgreSQL/select_implicit.sql.out
 
b/sql/core/src/test/resources/sql-tests/analyzer-results/postgreSQL/select_implicit.sql.out
index 73a818a676a4..83b10b3cb67c 100644
--- 
a/sql/core/src/test/resources/sql-tests/analyzer-results/postgreSQL/select_implicit.sql.out
+++ 
b/sql/core/src/test/resources/sql-tests/analyzer-results/postgreSQL/select_implicit.sql.out
@@ -197,9 +197,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 45,
+    "startIndex" : 54,
     "stopIndex" : 54,
-    "fragment" : "GROUP BY 3"
+    "fragment" : "3"
   } ]
 }
 
diff --git 
a/sql/core/src/test/resources/sql-tests/analyzer-results/udf/postgreSQL/udf-select_implicit.sql.out
 
b/sql/core/src/test/resources/sql-tests/analyzer-results/udf/postgreSQL/udf-select_implicit.sql.out
index f9752344379c..05f47aeace9f 100644
--- 
a/sql/core/src/test/resources/sql-tests/analyzer-results/udf/postgreSQL/udf-select_implicit.sql.out
+++ 
b/sql/core/src/test/resources/sql-tests/analyzer-results/udf/postgreSQL/udf-select_implicit.sql.out
@@ -200,9 +200,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 55,
+    "startIndex" : 64,
     "stopIndex" : 64,
-    "fragment" : "GROUP BY 3"
+    "fragment" : "3"
   } ]
 }
 
diff --git 
a/sql/core/src/test/resources/sql-tests/results/group-by-ordinal.sql.out 
b/sql/core/src/test/resources/sql-tests/results/group-by-ordinal.sql.out
index 64bfac15a814..e13c4b13899a 100644
--- a/sql/core/src/test/resources/sql-tests/results/group-by-ordinal.sql.out
+++ b/sql/core/src/test/resources/sql-tests/results/group-by-ordinal.sql.out
@@ -102,9 +102,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 23,
+    "startIndex" : 32,
     "stopIndex" : 33,
-    "fragment" : "group by -1"
+    "fragment" : "-1"
   } ]
 }
 
@@ -125,9 +125,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 23,
+    "startIndex" : 32,
     "stopIndex" : 32,
-    "fragment" : "group by 0"
+    "fragment" : "0"
   } ]
 }
 
@@ -148,9 +148,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 23,
+    "startIndex" : 32,
     "stopIndex" : 32,
-    "fragment" : "group by 3"
+    "fragment" : "3"
   } ]
 }
 
@@ -171,9 +171,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 31,
+    "startIndex" : 40,
     "stopIndex" : 40,
-    "fragment" : "group by 3"
+    "fragment" : "3"
   } ]
 }
 
@@ -194,9 +194,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 35,
+    "startIndex" : 44,
     "stopIndex" : 44,
-    "fragment" : "group by 3"
+    "fragment" : "3"
   } ]
 }
 
@@ -432,9 +432,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 33,
+    "startIndex" : 45,
     "stopIndex" : 46,
-    "fragment" : "group by a, -1"
+    "fragment" : "-1"
   } ]
 }
 
@@ -455,9 +455,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 33,
+    "startIndex" : 45,
     "stopIndex" : 45,
-    "fragment" : "group by a, 3"
+    "fragment" : "3"
   } ]
 }
 
@@ -478,9 +478,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 33,
-    "stopIndex" : 52,
-    "fragment" : "group by cube(-1, 2)"
+    "startIndex" : 47,
+    "stopIndex" : 48,
+    "fragment" : "-1"
   } ]
 }
 
@@ -501,9 +501,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 33,
-    "stopIndex" : 51,
-    "fragment" : "group by cube(1, 3)"
+    "startIndex" : 50,
+    "stopIndex" : 50,
+    "fragment" : "3"
   } ]
 }
 
diff --git 
a/sql/core/src/test/resources/sql-tests/results/postgreSQL/select_implicit.sql.out
 
b/sql/core/src/test/resources/sql-tests/results/postgreSQL/select_implicit.sql.out
index 46c278e66d87..f0c283cb4036 100755
--- 
a/sql/core/src/test/resources/sql-tests/results/postgreSQL/select_implicit.sql.out
+++ 
b/sql/core/src/test/resources/sql-tests/results/postgreSQL/select_implicit.sql.out
@@ -224,9 +224,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 45,
+    "startIndex" : 54,
     "stopIndex" : 54,
-    "fragment" : "GROUP BY 3"
+    "fragment" : "3"
   } ]
 }
 
diff --git 
a/sql/core/src/test/resources/sql-tests/results/udaf/udaf-group-by-ordinal.sql.out
 
b/sql/core/src/test/resources/sql-tests/results/udaf/udaf-group-by-ordinal.sql.out
index 83374fc741c2..45a19ba2c3f1 100644
--- 
a/sql/core/src/test/resources/sql-tests/results/udaf/udaf-group-by-ordinal.sql.out
+++ 
b/sql/core/src/test/resources/sql-tests/results/udaf/udaf-group-by-ordinal.sql.out
@@ -102,9 +102,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 32,
+    "startIndex" : 41,
     "stopIndex" : 41,
-    "fragment" : "group by 3"
+    "fragment" : "3"
   } ]
 }
 
@@ -125,9 +125,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 36,
+    "startIndex" : 45,
     "stopIndex" : 45,
-    "fragment" : "group by 3"
+    "fragment" : "3"
   } ]
 }
 
@@ -351,9 +351,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 32,
+    "startIndex" : 44,
     "stopIndex" : 45,
-    "fragment" : "group by a, -1"
+    "fragment" : "-1"
   } ]
 }
 
@@ -374,9 +374,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 32,
+    "startIndex" : 44,
     "stopIndex" : 44,
-    "fragment" : "group by a, 3"
+    "fragment" : "3"
   } ]
 }
 
@@ -397,9 +397,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 32,
-    "stopIndex" : 51,
-    "fragment" : "group by cube(-1, 2)"
+    "startIndex" : 46,
+    "stopIndex" : 47,
+    "fragment" : "-1"
   } ]
 }
 
@@ -420,9 +420,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 32,
-    "stopIndex" : 50,
-    "fragment" : "group by cube(1, 3)"
+    "startIndex" : 49,
+    "stopIndex" : 49,
+    "fragment" : "3"
   } ]
 }
 
diff --git 
a/sql/core/src/test/resources/sql-tests/results/udf/postgreSQL/udf-select_implicit.sql.out
 
b/sql/core/src/test/resources/sql-tests/results/udf/postgreSQL/udf-select_implicit.sql.out
index 9381678d3594..a3a7cee4eaa7 100755
--- 
a/sql/core/src/test/resources/sql-tests/results/udf/postgreSQL/udf-select_implicit.sql.out
+++ 
b/sql/core/src/test/resources/sql-tests/results/udf/postgreSQL/udf-select_implicit.sql.out
@@ -227,9 +227,9 @@ org.apache.spark.sql.AnalysisException
   "queryContext" : [ {
     "objectType" : "",
     "objectName" : "",
-    "startIndex" : 55,
+    "startIndex" : 64,
     "stopIndex" : 64,
-    "fragment" : "GROUP BY 3"
+    "fragment" : "3"
   } ]
 }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@spark.apache.org
For additional commands, e-mail: commits-h...@spark.apache.org

Reply via email to