JingsongLi opened a new pull request, #10497: URL: https://github.com/apache/paimon/pull/10497
## What changes - Transport captured Snapshot metadata, including an explicitly empty view, through the shared Native Table bridge. - Keep Native scan planning enabled for captured empty/tag/version views. - Use the common Table bridge for hybrid execution and remove its separate snapshot transport. - Qualify supported vector routes before execution and propagate Native errors instead of retrying through Python against another view. - Add REST regressions for scan, vector, batch vector, full-text and hybrid search/lookup, plus primary-key vector golden-data coverage. ## Why These are capabilities already supported by Python. Captured views must remain fixed across later commits, and retained tags must continue working after the original snapshot JSON expires. The shared Rust Table now owns this state and the Python binding only forwards Java-format Snapshot metadata. Tests block the Python file scanner/search readers, verify concurrent update/delete between search and lookup, REST cache isolation, authoritative empty/error responses and missing index failures. The original 8 cases all failed before the paired fix. ## Dependency Depends on https://github.com/apache/paimon-rust/pull/1098. This PR is a draft until the Rust API is merged. Native CI continues building `apache/paimon-rust@main`. ## Validation - 154 passing tests with all five Native CI flags: captured read views, hybrid, the entire Native MERGE suite and Native update/write/commit smoke tests. Native counters: plans=216, reads=223, writes=62, commits=1; update row_id=2, grouped=2, predicate=5, upsert=3, incremental=5, merge=24. - The wider Native search run passed its full-text cases. It caught an internal Rust MERGE scan-mode rewrite, repaired and verified by the complete MERGE rerun. - 110 passing existing Native vector/search snapshot tests. - Paired Rust validation: 260 core tests, 16 DataFusion metadata/count tests, Clippy 1.98.0 and Python binding build. - Flake8 for changed Python files and Python 3.6 syntax parsing for changed production files. -- 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]
