JingsongLi opened a new pull request, #990: URL: https://github.com/apache/paimon-rust/pull/990
### Purpose Follow up on #988: a scan that uses a manifest sidecar can issue several range GETs for one manifest even when most of its blocks are selected. For an approximately 8 MiB manifest, this can turn one full GET into a sidecar GET plus two or more range GETs. ### Changes - Estimate selected manifest bytes and the number of range reads after the existing 4 MiB coalescing rule. - Read the full manifest when doing so saves range requests and the transfer increase is bounded by the range count, capped at 4x. Keep sparse selections on the range-read path and empty selections header-only. - Use the same range planner for the estimate and the actual selected read. For an 8 MiB manifest with two planned ranges and at least 4 MiB selected, the manifest body now uses one full read rather than two range reads. ### Tests - `cargo test -p paimon spec::manifest_sidecar::tests --lib` (8 passed) - `cargo test -p paimon table::table_scan::tests --lib` (109 passed) - `cargo clippy -p paimon --lib --tests -- -D warnings` - `cargo fmt --all -- --check` No storage format 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]
