-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Validate concurrent commits in DynamicIcebergSink to prevent commit duplication #14517
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
Conversation
36f03a9 to
90877bf
Compare
|
@pvary, I updated this PR with the new API that was recently merged. |
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
4be7dd5 to
46b70e5
Compare
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
mxm
left a comment
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.
Good catch @aiborodin!
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
46b70e5 to
be867b5
Compare
.../v1.20/flink/src/test/java/org/apache/iceberg/flink/sink/dynamic/TestDynamicIcebergSink.java
Show resolved
Hide resolved
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
|
When this is fixed, it would be good to fix this in the non-dynamic sink too. |
mxm
left a comment
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.
LGTM
be867b5 to
6419219
Compare
Sounds good, I will raise a PR for the regular sink. |
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
6419219 to
279d707
Compare
f126e52 to
1fbacd3
Compare
Change-Id: I9df6d982ce7b32621a966bf68b1f43cb7c85c4e7
1fbacd3 to
87e86a8
Compare
|
Merged to main. |
This PR addresses the issue in #14425 by validating that no concurrent commit has moved the
flink.max-committed-checkpoint-idinDynamicIcebergSinkthat would not be seen by the committer due to the table refreshing during the commit process.