-
Notifications
You must be signed in to change notification settings - Fork 3k
Flink: Refactor WriteResult aggregation in DynamicIcebergSink #14810
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
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
428def3 to
2a3c522
Compare
pvary
reviewed
Dec 10, 2025
flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
pvary
reviewed
Dec 10, 2025
flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
pvary
reviewed
Dec 10, 2025
flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
pvary
reviewed
Dec 10, 2025
.../flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicWriteResultSerializer.java
Show resolved
Hide resolved
pvary
reviewed
Dec 10, 2025
flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/WriteTarget.java
Show resolved
Hide resolved
2a3c522 to
a56fb66
Compare
pvary
reviewed
Dec 11, 2025
flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/WriteTarget.java
Show resolved
Hide resolved
pvary
reviewed
Dec 15, 2025
flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
pvary
reviewed
Dec 15, 2025
.../flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicWriteResultAggregator.java
Outdated
Show resolved
Hide resolved
a56fb66 to
2925a0e
Compare
pvary
reviewed
Dec 16, 2025
flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Show resolved
Hide resolved
47f7a8b to
e9276da
Compare
mxm
reviewed
Dec 18, 2025
flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/TableKey.java
Outdated
Show resolved
Hide resolved
.../flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommittableSerializer.java
Outdated
Show resolved
Hide resolved
flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommitter.java
Outdated
Show resolved
Hide resolved
17ed528 to
20c4f25
Compare
mxm
approved these changes
Dec 19, 2025
bfae861 to
247e47e
Compare
pvary
reviewed
Jan 8, 2026
.../flink/src/main/java/org/apache/iceberg/flink/sink/dynamic/DynamicCommittableSerializer.java
Outdated
Show resolved
Hide resolved
pvary
approved these changes
Jan 8, 2026
mxm
approved these changes
Jan 8, 2026
Contributor
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.
Thanks @aiborodin!
247e47e to
3c5fd23
Compare
DynamicWriteResultAggregator currently produces multiple committables per (table, branch, checkpoint), which get aggregated in the downstream committer. Refactor the commit aggregator to output only one committable per triplet. Clean up DynamicCommitter to remove assumptions of multiple commit requests per table, branch, and checkpoint. This requires serializing the aggregated WriteResult using multiple temporary manifest files for each unique partition spec because the Iceberg manifest writer requires a single spec per manifest file. We can improve this later by refactoring serialization in the following changes. Change-Id: I6d96c376ad9f3f04f864aef05966d5d0862ef051
3c5fd23 to
a19ac9a
Compare
Contributor
|
Merged to main. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR re-opens #14312.