diff --git a/datafusion/functions-aggregate/src/first_last.rs b/datafusion/functions-aggregate/src/first_last.rs index 8c17854a8aae..23fb11a379c9 100644 --- a/datafusion/functions-aggregate/src/first_last.rs +++ b/datafusion/functions-aggregate/src/first_last.rs @@ -405,11 +405,7 @@ impl FirstValuePhysicalExpr { } pub fn convert_to_last(self) -> LastValuePhysicalExpr { - let mut name = if self.name.starts_with("FIRST") { - format!("LAST{}", &self.name[5..]) - } else { - format!("LAST_VALUE({})", self.expr) - }; + let mut name = format!("LAST{}", &self.name[5..]); replace_order_by_clause(&mut name); let FirstValuePhysicalExpr { @@ -585,11 +581,7 @@ impl LastValuePhysicalExpr { } pub fn convert_to_first(self) -> FirstValuePhysicalExpr { - let mut name = if self.name.starts_with("LAST") { - format!("FIRST{}", &self.name[4..]) - } else { - format!("FIRST_VALUE({})", self.expr) - }; + let mut name = format!("FIRST{}", &self.name[4..]); replace_order_by_clause(&mut name); let LastValuePhysicalExpr { diff --git a/datafusion/physical-expr/src/equivalence/projection.rs b/datafusion/physical-expr/src/equivalence/projection.rs index b1f30a39e71c..ea852c0d0bf6 100644 --- a/datafusion/physical-expr/src/equivalence/projection.rs +++ b/datafusion/physical-expr/src/equivalence/projection.rs @@ -20,7 +20,7 @@ use std::sync::Arc; use arrow::datatypes::SchemaRef; use datafusion_common::tree_node::{Transformed, TransformedResult, TreeNode}; -use datafusion_common::{DataFusionError, Result}; +use datafusion_common::{internal_err, Result}; use crate::expressions::Column; use crate::PhysicalExpr; @@ -68,8 +68,9 @@ impl ProjectionMapping { let idx = col.index(); let matching_input_field = input_schema.field(idx); if col.name() != matching_input_field.name() { - return Err(DataFusionError::Internal(format!("Input field name {} does not match with the projection expression {}",matching_input_field.name(),col.name()))); - } + return internal_err!("Input field name {} does not match with the projection expression {}", + matching_input_field.name(),col.name()) + } let matching_input_column = Column::new(matching_input_field.name(), idx); Ok(Transformed::yes(Arc::new(matching_input_column)))