JingsongLi opened a new pull request, #912: URL: https://github.com/apache/paimon-rust/pull/912
## Summary - Add Rust encoding and decoding for the unframed Java `CommitMessageSerializer` v14 body, including separate data and compact increments and full current `IndexFileMeta` BinaryRow support. - Expose message export and import through the Python binding. Import requires a trusted source table location because the Java body has no table identity. A dedicated Rust decoder restores fixed-bucket overwrite context supplied by the caller. - Apply Java's row-id baseline validation. Reject compact increments at commit entry points until Rust can create Java's separate COMPACT snapshot; abort still cleans up their newly written files. ## Verification - Round-tripped three Java-generated v14 payloads: empty, index, and nested deletion-vector/global-index metadata. - `cargo test -p paimon --lib table::table_commit::tests` — 75 passed. - `cargo test -p paimon --lib commit_message::tests` — 2 passed. - `cargo test -p paimon --lib spec::index_file_meta::wire_tests` — 1 passed. - `cargo check -p pypaimon_rust` and `cargo fmt --all --check` passed. The serializer body carries no version header; callers carry version 14 alongside the bytes, as Java's enclosing serializer does. This PR supplies the Rust wire format and binding entry points for a later native commit bridge. -- 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]
