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

   ### Purpose
   
   PyPaimon does not persist Java's manifest bucket/level statistics or common 
bucket count, so bucket-key queries must open unrelated manifest files. Align 
`ManifestFileMeta` and manifest-list reads/writes with Java, and prune manifest 
files using their inclusive bucket ranges before opening them.
   
   Collect bucket and level ranges for each written manifest, and retain 
`total_buckets` only when every entry uses the same positive count. Keep format 
identifier 2, nullable defaults, and existing Python positional constructor 
arguments compatible. Fall back conservatively for legacy metadata, mixed 
bucket counts, negative buckets, and predicates that cannot be resolved without 
partition values.
   
   ### Tests
   
   - 206 tests passed across manifest, bucket pruning, scanner, explain, 
commit, scan mode, streaming scan, and manifests system-table suites; 1 
existing codec test skipped on Python 3.13.
   - Added regression coverage for metadata round trips and legacy schema 
resolution, per-file statistics, mixed bucket counts, inclusive range bounds, 
historical bucket counts, and conservative fallback.
   - Integration test verifies that unrelated manifest files are never opened 
and query results remain correct.
   - Flake8 on all changed Python files, license-header checks, and `git diff 
--check` passed.
   


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