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]

Reply via email to