ebyhr opened a new pull request, #17121: URL: https://github.com/apache/iceberg/pull/17121
`VectorizedDeltaEncodedValuesReader.readValues` resets `valuesRead` to the current batch size on every call (`valuesRead = total - remaining`) instead of accumulating it (`+=`). On a multi-batch page read the overflow guard `valuesRead + total > totalValueCount` sees a stale count and silently allows reads past the logical end of the page. The bug does not throw - DELTA_BINARY_PACKED mini-blocks are zero-padded to a fixed size, so the reader decodes the padding zeros as valid deltas and emits plausible-looking but wrong values. For example, a page of [10, 20, ..., 100] read in batches of 6 and 4, then read once more, returns 110 - the next extrapolated delta step - with no error. -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
