Skip to content
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

sql parser: do not fail whole extraction on partial failures, report ExtractionErrorRunFacet #1479

Merged
merged 1 commit into from Jan 16, 2023

Conversation

mobuchowski
Copy link
Member

This PR adds an ability for a SQL parser to report errors to integration that's calling it, and integrations to report those error using ExtractionErrorRunFacet.

Additionally, the behavior (and API) of parser changes - if it fails to parse some part of SQL statements send to it, it won't raise exception and fail whole extraction, but report partial failure from which some input and output datasets still can be extracted. PR also changes integrations to take care of that API change.

Signed-off-by: Maciej Obuchowski obuchowski.maciej@gmail.com

Closes: #1052, partially closes #1333

Copy link
Contributor

@pawel-big-lebowski pawel-big-lebowski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My concern is that Python and Java prefer returning errors in form of exceptions and this PR adds extra errors field to a valid SqlMeta return type object. What are the reasons to use such a pattern?

…them instead

Signed-off-by: Maciej Obuchowski <obuchowski.maciej@gmail.com>
@mobuchowski mobuchowski merged commit ce9b00e into main Jan 16, 2023
@mobuchowski mobuchowski deleted the sql/do-not-fail-on-partial-extraction branch January 16, 2023 10:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

SQL Parser (Snowflake) Bug failure to extract information by OL integration should be indicated in facet
3 participants