JingsongLi opened a new pull request, #10674: URL: https://github.com/apache/paimon/pull/10674
Depends on https://github.com/apache/paimon-rust/pull/1182. ## What changes Complete the existing PyPaimon Native paths for historical/captured views and catalog-loaded schemas, following current Java semantics. - Route historical Arrow/Row upserts and MERGE with INSERT through Rust Core. Remove the obsolete internal time-travel gate; transport captured snapshots uniformly. - Reconstruct authorized writes and commits through the existing Native read transport, retaining the original REST-loaded schema and captured view after schema evolution. Keep both fresh-catalog and restored-handle UUID/path/branch checks, and preserve normalized write options. - Fix Python primary-key sequence recovery to use a captured latest snapshot by default, retaining explicit restore snapshot precedence. Restoring the caller's historical snapshot could silently hide a new write behind newer records. - Add Python/Native regressions for ordinary historical writes, current-state commit/overwrite/truncate, branch isolation, captured empty readers, schema IDs, field renames/drop-readd/widening, conflict atomicity, authorization and cross-partition writer recovery. The ordinary writer/committer and existing Rust update APIs own execution. No compatibility probing, new public API, dependency or CI workaround. ## Verification - Historical update/authorization regressions: **92 passed, 92 Native skipped**; historical committer field-identity/conflict group: **9 passed, 9 Native skipped**. - Loaded-schema authorization and routing group: **74 passed, 21 Native skipped**. - Existing commit/authorized update/write-path group: **176 passed, 179 skipped**. - Historical write/commit and targeted writer group: **33 passed, 56 skipped**, including 20 ordinary historical cases; explicit restore precedence: **2 passed, 2 Native skipped**. - Cross-partition Native regressions remain deferred locally; Core tests cover all four merge engines with historical and captured-empty views. - Flake8, Python 3.6 syntax and diff checks. Native Python integration cases were not run against the stale installed extension. No extension was rebuilt or installed. Native CI continues building Rust main; this PR depends on the companion Rust change and stays draft until it merges. -- 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]
