Stephen0421 opened a new pull request, #8831: URL: https://github.com/apache/paimon/pull/8831
### Purpose Chain table batch reads currently produce one split per bucket, which limits read parallelism for large buckets. This PR adds key-range split generation for chain table batch scans: - Introduces `chain-table.split.key-range-enabled` (default: `true`); set to `false` to fall back to one split per bucket - Batch scans use `IntervalPartition` + `BinPacking` to split snapshot and delta files by key range; files with overlapping key ranges always stay in the same split so all versions of a key across branches are merged correctly - Streaming reads are unchanged and still use the original one-split-per-bucket behavior ### Tests - Added `ChainTableUtilsTest.testBuildChainSplitsWithKeyRangeSplitting`: verifies key-disjoint sections are split into separate splits and overlapping snapshot/delta files are kept together - Added `ChainTableUtilsTest.testBuildChainSplitsKeyRangeSplittingLargeTargetKeepsOneSplit`: verifies a large `targetSplitSize` packs all sections into a single split - Added `ChainTableUtilsTest.testBuildChainSplitsWithoutKeyRangeSplitting`: verifies a null `keyComparator` preserves the original one-split-per-bucket behavior -- 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]
