eliaperantoni commented on code in PR #14439: URL: https://github.com/apache/datafusion/pull/14439#discussion_r1943780039
########## datafusion/common/src/error.rs: ########## @@ -425,29 +442,38 @@ impl DataFusionError { "".to_owned() } - fn error_prefix(&self) -> &'static str { + fn error_prefix(&self) -> Cow<str> { match self { - DataFusionError::ArrowError(_, _) => "Arrow error: ", + DataFusionError::ArrowError(_, _) => Cow::Borrowed("Arrow error: "), #[cfg(feature = "parquet")] - DataFusionError::ParquetError(_) => "Parquet error: ", + DataFusionError::ParquetError(_) => Cow::Borrowed("Parquet error: "), #[cfg(feature = "avro")] - DataFusionError::AvroError(_) => "Avro error: ", + DataFusionError::AvroError(_) => Cow::Borrowed("Avro error: "), #[cfg(feature = "object_store")] - DataFusionError::ObjectStore(_) => "Object Store error: ", - DataFusionError::IoError(_) => "IO error: ", - DataFusionError::SQL(_, _) => "SQL error: ", - DataFusionError::NotImplemented(_) => "This feature is not implemented: ", - DataFusionError::Internal(_) => "Internal error: ", - DataFusionError::Plan(_) => "Error during planning: ", - DataFusionError::Configuration(_) => "Invalid or Unsupported Configuration: ", - DataFusionError::SchemaError(_, _) => "Schema error: ", - DataFusionError::Execution(_) => "Execution error: ", - DataFusionError::ExecutionJoin(_) => "ExecutionJoin error: ", - DataFusionError::ResourcesExhausted(_) => "Resources exhausted: ", - DataFusionError::External(_) => "External error: ", - DataFusionError::Context(_, _) => "", - DataFusionError::Substrait(_) => "Substrait error: ", - DataFusionError::Diagnostic(_, _) => "", + DataFusionError::ObjectStore(_) => Cow::Borrowed("Object Store error: "), + DataFusionError::IoError(_) => Cow::Borrowed("IO error: "), + DataFusionError::SQL(_, _) => Cow::Borrowed("SQL error: "), + DataFusionError::NotImplemented(_) => { + Cow::Borrowed("This feature is not implemented: ") + } + DataFusionError::Internal(_) => Cow::Borrowed("Internal error: "), + DataFusionError::Plan(_) => Cow::Borrowed("Error during planning: "), + DataFusionError::Configuration(_) => { + Cow::Borrowed("Invalid or Unsupported Configuration: ") + } + DataFusionError::SchemaError(_, _) => Cow::Borrowed("Schema error: "), + DataFusionError::Execution(_) => Cow::Borrowed("Execution error: "), + DataFusionError::ExecutionJoin(_) => Cow::Borrowed("ExecutionJoin error: "), + DataFusionError::ResourcesExhausted(_) => { + Cow::Borrowed("Resources exhausted: ") + } + DataFusionError::External(_) => Cow::Borrowed("External error: "), + DataFusionError::Context(_, _) => Cow::Borrowed(""), + DataFusionError::Substrait(_) => Cow::Borrowed("Substrait error: "), + DataFusionError::Diagnostic(_, _) => Cow::Borrowed(""), + DataFusionError::Collection(errs) => { + Cow::Owned(format!("{} errors, first error: {}", errs.len(), errs.first().expect("cannot construct DataFusionError::Collection with 0 errors, but got one such case").error_prefix())) Review Comment: Yeah good point, probably not a lot of value to see the number of errors. I'll change it -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org For additional commands, e-mail: github-h...@datafusion.apache.org