-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Attach Diagnostic
to syntax errors
#14437
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
I think this is a good first issue as the need is clear and the tests in https://github.com/apache/datafusion/blob/85fbde2661bdb462fc498dc18f055c44f229604c/datafusion/sql/tests/cases/diagnostic.rs are well structured for extension. |
take |
Hey @irenjj how is it going with this ticket :) Can I help with anything? |
@eliaperantoni How are you printing these messages? Also, the error generated by the above mentioned query seems to be generated by sqlparser and then propagated to DataFusion. So, AFAIK it might not be possible to attach diagnostic for that particular error as I have opened a PR #15680, it will take some time to be ready for review but if you have some time I would be grateful if you can let me know whether the approach makes sense to you. |
Is your feature request related to a problem or challenge?
For a query like:
The only message that the end user of an application built atop of DataFusion sees is:
We want to provide a richer message that references and highlights locations in the original SQL query, and contextualises and helps the user understand the error. In the end, it would be possible to display errors in a fashion akin to what was enabled by #13664 for some errors:
See #14429 for more information.
Describe the solution you'd like
Attach a well crafted
Diagnostic
to theDataFusionError
, building on top of the foundations laid in #13664. See #14429 for more information.The location of the error can probably be fetched from the error coming from
sqlparser
, requiring little changes to DataFausion itself.Needs some thought to figure out which kinds of syntax errors can be supported and how. i.e. the example above is simply for when the parser expects token in a specific set; but what about unbalanced parenthesis, unrecognised keywords, etc.
Describe alternatives you've considered
No response
Additional context
No response
The text was updated successfully, but these errors were encountered: