Skip to content

Commit 2a1423a

Browse files
committed
moved backtrace
1 parent 64d209e commit 2a1423a

File tree

1 file changed

+16
-21
lines changed

1 file changed

+16
-21
lines changed

datafusion/common/src/error.rs

Lines changed: 16 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -278,63 +278,58 @@ impl From<GenericError> for DataFusionError {
278278

279279
impl Display for DataFusionError {
280280
fn fmt(&self, f: &mut Formatter) -> std::fmt::Result {
281-
let back_trace_desc: String = DataFusionError::get_back_trace();
282-
283281
match *self {
284282
DataFusionError::ArrowError(ref desc) => {
285-
write!(f, "Arrow error: {desc}{back_trace_desc}")
283+
write!(f, "Arrow error: {desc}")
286284
}
287285
#[cfg(feature = "parquet")]
288286
DataFusionError::ParquetError(ref desc) => {
289-
write!(f, "Parquet error: {desc}{back_trace_desc}")
287+
write!(f, "Parquet error: {desc}")
290288
}
291289
#[cfg(feature = "avro")]
292290
DataFusionError::AvroError(ref desc) => {
293-
write!(f, "Avro error: {desc}{back_trace_desc}")
291+
write!(f, "Avro error: {desc}")
294292
}
295293
DataFusionError::IoError(ref desc) => {
296-
write!(f, "IO error: {desc}{back_trace_desc}")
294+
write!(f, "IO error: {desc}")
297295
}
298296
DataFusionError::SQL(ref desc) => {
299-
write!(f, "SQL error: {desc:?}{back_trace_desc}")
297+
write!(f, "SQL error: {desc:?}")
300298
}
301299
DataFusionError::Configuration(ref desc) => {
302300
write!(f, "Invalid or Unsupported Configuration: {desc}")
303301
}
304302
DataFusionError::NotImplemented(ref desc) => {
305-
write!(
306-
f,
307-
"This feature is not implemented: {desc}{back_trace_desc}"
308-
)
303+
write!(f, "This feature is not implemented: {desc}")
309304
}
310305
DataFusionError::Internal(ref desc) => {
311306
write!(f, "Internal error: {desc}. This was likely caused by a bug in DataFusion's \
312-
code and we would welcome that you file an bug report in our issue tracker{back_trace_desc}")
307+
code and we would welcome that you file an bug report in our issue tracker")
313308
}
314309
DataFusionError::Plan(ref desc) => {
315-
write!(f, "Error during planning: {desc}{back_trace_desc}")
310+
write!(f, "Error during planning: {desc}")
316311
}
317312
DataFusionError::SchemaError(ref desc) => {
318-
write!(f, "Schema error: {desc}{back_trace_desc}")
313+
write!(f, "Schema error: {desc}")
319314
}
320315
DataFusionError::Execution(ref desc) => {
321-
write!(f, "Execution error: {desc}{back_trace_desc}")
316+
write!(f, "Execution error: {desc}")
322317
}
323318
DataFusionError::ResourcesExhausted(ref desc) => {
324-
write!(f, "Resources exhausted: {desc}{back_trace_desc}")
319+
write!(f, "Resources exhausted: {desc}")
325320
}
326321
DataFusionError::External(ref desc) => {
327-
write!(f, "External error: {desc}{back_trace_desc}")
322+
write!(f, "External error: {desc}")
328323
}
329324
#[cfg(feature = "object_store")]
330325
DataFusionError::ObjectStore(ref desc) => {
331-
write!(f, "Object Store error: {desc}{back_trace_desc}")
326+
write!(f, "Object Store error: {desc}")
332327
}
333328
DataFusionError::Context(ref desc, ref err) => {
334329
write!(f, "{}\ncaused by\n{}", desc, *err)
335330
}
336331
DataFusionError::Substrait(ref desc) => {
337-
write!(f, "Substrait error: {desc}{back_trace_desc}")
332+
write!(f, "Substrait error: {desc}")
338333
}
339334
}
340335
}
@@ -424,7 +419,7 @@ impl DataFusionError {
424419
.to_string()
425420
}
426421

427-
fn get_back_trace() -> String {
422+
pub fn get_back_trace() -> String {
428423
let back_trace = Backtrace::capture();
429424
if back_trace.status() == BacktraceStatus::Captured {
430425
return format!("\n\nbacktrace: {}", back_trace);
@@ -472,7 +467,7 @@ macro_rules! make_error {
472467
#[macro_export]
473468
macro_rules! $NAME {
474469
($d($d args:expr),*) => {
475-
Err(DataFusionError::$ERR(format!($d($d args),*).into()))
470+
Err(DataFusionError::$ERR(format!("{}{}", format!($d($d args),*), DataFusionError::get_back_trace()).into()))
476471
}
477472
}
478473
}

0 commit comments

Comments
 (0)