Sigma-Ma commented on issue #16284:
URL: https://github.com/apache/datafusion/issues/16284#issuecomment-5213739656

   Hi @alamb and @zhuqi-lucas, I started working on this issue and reproduced 
it on the current main branch.
   
   I first tried making `--complete` use only 
`error.to_string().lines().next()`, so sqllogictest would generate an inline 
regex rather than an exact multiline error.
   
   However, the first line itself is no longer stable between builds:
   
   Without the `backtrace` feature, the first line contains multiple collected 
planning errors:
   
       ... requires Float ...,Error during planning: ... expects 4 arguments ...
   
   With `RUST_BACKTRACE=1` and the `backtrace` feature, the first line stops 
after the first collected error:
   
       ... requires Float ...
   
   Therefore, generating the complete first line locally still does not match 
the CI error.
   
   At the sqllogictest completion boundary, this is already flattened into 
`DataFusionError::Plan(String)`, so selecting the first underlying error would 
require either parsing the formatted string or preserving/providing a 
structured error summary earlier.
   
   Which direction would you prefer?
   
   1. Implement the original first-line behavior as a best-effort improvement.
   2. Add a structured/stable error-summary hook and use it during completion.
   3. Require completion runs to use the same backtrace feature/environment as 
CI.
   
   I prefer option 2 because it avoids depending on formatted error strings, 
but it is a larger change.


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to