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

alamb pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/datafusion.git


The following commit(s) were added to refs/heads/main by this push:
     new 4a943560e1 Require sort expressions to be of type Sort (#12171)
4a943560e1 is described below

commit 4a943560e1a24108aeb915be260db7c4264c9b11
Author: Piotr Findeisen <[email protected]>
AuthorDate: Tue Aug 27 15:22:44 2024 +0200

    Require sort expressions to be of type Sort (#12171)
    
    * Require sort expressions to be of type Sort in compare_sort_expr
    
    * fixup! Require sort expressions to be of type Sort in compare_sort_expr
    
    * fixup! Require sort expressions to be of type Sort in compare_sort_expr
---
 datafusion/expr/src/utils.rs           | 2 +-
 datafusion/sql/src/expr/function.rs    | 4 +++-
 datafusion/sql/src/unparser/rewrite.rs | 2 ++
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/datafusion/expr/src/utils.rs b/datafusion/expr/src/utils.rs
index 8f04d3ec30..a01d5ef897 100644
--- a/datafusion/expr/src/utils.rs
+++ b/datafusion/expr/src/utils.rs
@@ -569,7 +569,7 @@ pub fn compare_sort_expr(
             }
             Ordering::Equal
         }
-        _ => Ordering::Equal,
+        _ => panic!("Sort expressions must be of type Sort"),
     }
 }
 
diff --git a/datafusion/sql/src/expr/function.rs 
b/datafusion/sql/src/expr/function.rs
index b95414a8ca..72e08e4b8f 100644
--- a/datafusion/sql/src/expr/function.rs
+++ b/datafusion/sql/src/expr/function.rs
@@ -295,8 +295,10 @@ impl<'a, S: ContextProvider> SqlToRel<'a, S> {
                             Some(false)
                         };
                     }
+                    Some(false)
+                } else {
+                    panic!("order_by expression must be of type Sort");
                 }
-                Some(false)
             });
 
             let window_frame = window
diff --git a/datafusion/sql/src/unparser/rewrite.rs 
b/datafusion/sql/src/unparser/rewrite.rs
index fed3f2c39f..9e1adcf4df 100644
--- a/datafusion/sql/src/unparser/rewrite.rs
+++ b/datafusion/sql/src/unparser/rewrite.rs
@@ -161,6 +161,8 @@ pub(super) fn rewrite_plan_for_sort_on_non_projected_fields(
     for expr in &sort.expr {
         if let Expr::Sort(s) = expr {
             collects.push(s.expr.as_ref().clone());
+        } else {
+            panic!("sort expression must be of type Sort");
         }
     }
 


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

Reply via email to