[core] Refactor sort compact to produce COMPACT commits#8566
Closed
hbgstc123 wants to merge 2 commits into
Closed
Conversation
Rewrite sort compact writes into COMPACT commits instead of OVERWRITE, preserve sequence ordering and hash-index consistency across Flink/Spark, and make commit-success detection safe when post-commit steps fail. Co-authored-by: Cursor <cursoragent@cursor.com>
3e828b4 to
b925140
Compare
Remove unused imports and correct import ordering so CI licensing and build checks pass. Co-authored-by: Cursor <cursoragent@cursor.com>
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
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.
Purpose
Follow up on #7595 per this review comment: sort compact should not be modeled as an OVERWRITE commit with extra base-snapshot handling. Instead, it should produce a normal COMPACT commit so the existing commit protocol can perform compact validation and conflict detection.
This PR fixes the concurrent-write data loss risk in sort compact by refactoring Flink/Spark sort compact to:
No new overwritePartition(baseSnapshotId) APIs or special overwrite conflict logic are introduced.
Tests
Core
Flink
Spark