QuakeWang opened a new pull request, #8466:
URL: https://github.com/apache/paimon/pull/8466
### Purpose
Ray `merge_into` prepares update, delete, and insert commit messages before
committing them together. If a later branch or duplicate `_ROW_ID` validation
fails before the final commit starts, files from earlier prepared messages have
already been written but are neither committed nor aborted, leaving orphan
files.
This change tracks prepared messages until the final commit starts and
aborts them on pre-commit failures. Once commit starts, it does not abort
because a commit failure may still have registered files in a snapshot. The
commit object is also closed in a `finally` block after creation.
### Tests
- Added regression tests for branch failure, insert failure, duplicate
`_ROW_ID` validation failure, and commit-start failure.
- `python3 -m py_compile
paimon-python/pypaimon/ray/data_evolution_merge_into.py
paimon-python/pypaimon/tests/table_merge_into_test.py`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]