-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
[HUDI-8400] apply 'write.ignore.failed' when write data failed v2 #12150
base: master
Are you sure you want to change the base?
[HUDI-8400] apply 'write.ignore.failed' when write data failed v2 #12150
Conversation
previous PR was reverted #12136, I reopen it and maybe more discussion is needed. @danny0405 |
We should clarify these items:
|
*/ | ||
protected void ignoreWriteFailed(Throwable throwable) { | ||
if (config.getIgnoreWriteFailed()) { | ||
throw new HoodieException(throwable.getMessage(), throwable); |
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.
Why we throw exception when 'ignore.write.failed' is true?
|
@fhan688 Let's fire a JIRA issue around this and move the discussion there. |
Sorry, I meant the GH issue, which is more easier to communicate. |
Thanks. #12187 |
Change Logs
In Flink engine, if exception occurs when task writing data, it will be ignored and the exception will be reported to StreamWriteCoordinator with write event, StreamWriteCoordinator will decide whether to commit when there is write failure according to 'write.ignore.failed'.
This PR apply 'write.ignore.failed' ahead when write failure occurs, thus throw an exception faster.
for example:
CP interval of Flink job is 15 minutes, the exception will not be found until CP commit, it will make a longer data latency in real-time sensitive scenarios.
Impact
module: hudi-client、 hudi-flink-datasource
Risk level (write none, low medium or high below)
low
Documentation Update
None
Contributor's checklist