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]
