-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
MINOR: DI APP Support Partial Success #18017
base: main
Are you sure you want to change the base?
Conversation
The Java checkstyle failed. Please run You can install the pre-commit hooks with |
The Java checkstyle failed. Please run You can install the pre-commit hooks with |
@@ -238,7 +238,7 @@ private WorkflowStats processWebAnalytics() { | |||
try { | |||
workflow.process(); | |||
} catch (SearchIndexException ex) { | |||
jobData.setStatus(EventPublisherJob.Status.FAILED); | |||
jobData.setStatus(EventPublisherJob.Status.RUNNING); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
does the job still continue after this ? @ulixius9
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ulixius9 Can you explain why we need the "Partial success" status? How does this defer from the user's perspective compared to the "failed" or "success" state?
@sushi30 the primary goal of this status is to take care of We have followed the same logic that we have for ingestion, i.e if more then 90% of the assets succeeded then the application will be marked as partial success. |
Quality Gate passed for 'open-metadata-ingestion'Issues Measures |
I do not see how this PR addresses this issue, unlike the ingestion, this app interacts only with internal components (and not external systems) so we should have a clear state for the app. If this requires the user's attention then we can log a warning, if it does not we can log at a lower level. I suggest making it clear to the user what is the action they should take when the app finishes (retry, reindex, re-ingest etc.). For this case it should be either For the AUTs I would suggest that we make the failure ignore-able at the test level. I do not think we should make schema changes (which are user-facing interfaces) to address issues with our testing frameworks. Can we make the app not raise an error for specific types of API errors like the one you stated? |
I mean the search reindexing application marks the status directly as success in case of such error which IMO might be not apt but we can replicate the same here. |
Describe your changes:
Fixes
I worked on ... because ...
Type of change:
Checklist:
Fixes <issue-number>: <short explanation>