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