JingsongLi opened a new pull request, #1137:
URL: https://github.com/apache/paimon-rust/pull/1137

   ## Summary
   
   Enable PyPaimon to reuse the existing Rust metadata providers for 
system-table reads on an already resolved table. This keeps the table's FileIO, 
REST credentials, branch and captured snapshot, and does not reload a table 
through a separate catalog.
   
   - Add `$file_key_ranges`, sharing the files provider's metadata extraction 
without decoding value statistics.
   - Expose `read_system_table(Table, name)` through a private 
`Table._read_system_table` Python bridge and the existing RecordBatchReader. 
Keep catalog-required `$partitions` on its existing catalog path.
   - Complete Java metadata semantics needed by the bridge: persisted 
latest-schema options, snapshot `writer_version`, `deleteRowCount`, composite 
index field names, system-local metadata instants, and historical file 
statistics respecting physical write columns, dense statistics and field IDs.
   - Use Java object strings for file keys/statistics (integer DATE/TIME and 
ISO Timestamp), retaining SQL CAST semantics for partitions. Reuse core casts 
and timestamp formatting.
   
   ## Verification
   
   - `cargo test -p paimon-datafusion --locked --lib system_tables`: 34 passed.
   - `cargo test -p paimon-datafusion --locked --features fulltext --test 
system_tables`: 27 passed.
   - `cargo +1.98.0 clippy --locked --all-targets --workspace --features 
fulltext,vortex -- -D warnings`: passed.
   - `cargo fmt --all --check`: passed.
   - Built the Python extension with maturin. Companion PyPaimon 
REST/system-table suite: 161 passed under both UTC and America/New_York. Covers 
empty and populated metadata, captured/empty/tag views, branch namespaces, PK 
ranges, vertical writes, schema evolution, indexes, authorization, 
projection/filter/limit and pickled plans.
   - Independently reviewed the Rust and Python changes against Java; repaired 
the object-string finding and re-reviewed it.
   
   The companion Python PR will continue building Apache paimon-rust main in 
CI; it should merge after this Rust change.
   


-- 
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