This is an automated email from the ASF dual-hosted git repository.
beliefer pushed a commit to branch branch-3.5
in repository https://gitbox.apache.org/repos/asf/spark.git
The following commit(s) were added to refs/heads/branch-3.5 by this push:
new b1fdbe85d5ba [SPARK-54299][SQL] Fix the wrong example query in
`WindowGroupLimit`
b1fdbe85d5ba is described below
commit b1fdbe85d5ba184f0fe38acfc50b6c67a1da9163
Author: huangxiaoping <[email protected]>
AuthorDate: Fri Nov 28 15:14:30 2025 +0800
[SPARK-54299][SQL] Fix the wrong example query in `WindowGroupLimit`
### What changes were proposed in this pull request?
Fix the wrong example query in `WindowGroupLimit`
### Why are the changes needed?
Fix the incorrect comments
### Does this PR introduce _any_ user-facing change?
No
### How was this patch tested?
<!--
No need test
### Was this patch authored or co-authored using generative AI tooling?
No
Closes #52993 from huangxiaopingRD/SPARK-54299.
Authored-by: huangxiaoping <[email protected]>
Signed-off-by: beliefer <[email protected]>
(cherry picked from commit 830ac653dd2c74d6ea77b38b1b002a4e61264cb1)
Signed-off-by: beliefer <[email protected]>
---
.../catalyst/optimizer/InferWindowGroupLimit.scala | 29 +++++++++++++++++-----
1 file changed, 23 insertions(+), 6 deletions(-)
diff --git
a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/InferWindowGroupLimit.scala
b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/InferWindowGroupLimit.scala
index f2e99721e926..d24790c22e06 100644
---
a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/InferWindowGroupLimit.scala
+++
b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/InferWindowGroupLimit.scala
@@ -26,12 +26,29 @@ import
org.apache.spark.sql.catalyst.trees.TreePattern.{FILTER, WINDOW}
* Inserts a `WindowGroupLimit` below `Window` if the `Window` has rank-like
functions
* and the function results are further filtered by limit-like predicates.
Example query:
* {{{
- * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
WHERE rn = 5
- * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
WHERE 5 = rn
- * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
WHERE rn < 5
- * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
WHERE 5 > rn
- * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
WHERE rn <= 5
- * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
WHERE 5 >= rn
+ * SELECT * FROM (
+ * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
+ * ) WHERE rn = 5;
+ *
+ * SELECT * FROM (
+ * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
+ * ) WHERE 5 = rn;
+ *
+ * SELECT * FROM (
+ * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
+ * ) WHERE rn < 5;
+ *
+ * SELECT * FROM (
+ * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
+ * ) WHERE 5 > rn;
+ *
+ * SELECT * FROM (
+ * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
+ * ) WHERE rn <= 5;
+ *
+ * SELECT * FROM (
+ * SELECT *, ROW_NUMBER() OVER(PARTITION BY k ORDER BY a) AS rn FROM Tab1
+ * ) WHERE 5 >= rn;
* }}}
*/
object InferWindowGroupLimit extends Rule[LogicalPlan] with PredicateHelper {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]