diff --git a/datafusion/expr/src/expr_schema.rs b/datafusion/expr/src/expr_schema.rs index 7ea0313bf776d..986f85adebaaf 100644 --- a/datafusion/expr/src/expr_schema.rs +++ b/datafusion/expr/src/expr_schema.rs @@ -141,7 +141,7 @@ impl ExprSchemable for Expr { // verify that function is invoked with correct number and type of arguments as defined in `TypeSignature` data_types_with_scalar_udf(&arg_data_types, func).map_err(|err| { plan_datafusion_err!( - "{} and {}", + "{} {}", err, utils::generate_signature_error_msg( func.name(), @@ -164,7 +164,7 @@ impl ExprSchemable for Expr { WindowFunctionDefinition::AggregateUDF(udf) => { let new_types = data_types_with_aggregate_udf(&data_types, udf).map_err(|err| { plan_datafusion_err!( - "{} and {}", + "{} {}", err, utils::generate_signature_error_msg( fun.name(), @@ -192,7 +192,7 @@ impl ExprSchemable for Expr { AggregateFunctionDefinition::UDF(fun) => { let new_types = data_types_with_aggregate_udf(&data_types, fun).map_err(|err| { plan_datafusion_err!( - "{} and {}", + "{} {}", err, utils::generate_signature_error_msg( fun.name(), diff --git a/datafusion/expr/src/type_coercion/functions.rs b/datafusion/expr/src/type_coercion/functions.rs index 4dd8d6371934f..5f060a4a4f16e 100644 --- a/datafusion/expr/src/type_coercion/functions.rs +++ b/datafusion/expr/src/type_coercion/functions.rs @@ -49,10 +49,7 @@ pub fn data_types_with_scalar_udf( if signature.type_signature.supports_zero_argument() { return Ok(vec![]); } else { - return plan_err!( - "[data_types_with_scalar_udf] signature {:?} does not support zero arguments.", - &signature.type_signature - ); + return plan_err!("{} does not support zero arguments.", func.name()); } } @@ -79,11 +76,7 @@ pub fn data_types_with_aggregate_udf( if signature.type_signature.supports_zero_argument() { return Ok(vec![]); } else { - return plan_err!( - "[data_types_with_aggregate_udf] Coercion from {:?} to the signature {:?} failed.", - current_types, - &signature.type_signature - ); + return plan_err!("{} does not support zero arguments.", func.name()); } } @@ -118,8 +111,7 @@ pub fn data_types( return Ok(vec![]); } else { return plan_err!( - "[data_types] Coercion from {:?} to the signature {:?} failed.", - current_types, + "signature {:?} does not support zero arguments.", &signature.type_signature ); } diff --git a/datafusion/sqllogictest/test_files/array.slt b/datafusion/sqllogictest/test_files/array.slt index c62c1ce29c061..55a430767c76c 100644 --- a/datafusion/sqllogictest/test_files/array.slt +++ b/datafusion/sqllogictest/test_files/array.slt @@ -1137,7 +1137,7 @@ from arrays_values_without_nulls; ## array_element (aliases: array_extract, list_extract, list_element) # Testing with empty arguments should result in an error -query error DataFusion error: Error during planning: Error during planning: \[data_types_with_scalar_udf\] signature ArraySignature\(ArrayAndIndex\) does not support zero arguments. +query error DataFusion error: Error during planning: Error during planning: array_element does not support zero arguments. select array_element(); # array_element error @@ -1979,7 +1979,7 @@ select array_slice(a, -1, 2, 1), array_slice(a, -1, 2), [6.0] [6.0] [] [] # Testing with empty arguments should result in an error -query error DataFusion error: Error during planning: Error during planning: \[data_types_with_scalar_udf\] signature VariadicAny does not support zero arguments. +query error DataFusion error: Error during planning: Error during planning: array_slice does not support zero arguments. select array_slice();