From 526a2b837f59007ee335f1082f5e1f3ffa7f6ce0 Mon Sep 17 00:00:00 2001 From: Dan Harris <1327726+thinkharderdev@users.noreply.github.com> Date: Thu, 18 Aug 2022 15:15:13 -0400 Subject: [PATCH] Fix bug in page skipping (#2504) --- parquet/src/file/serialized_reader.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/parquet/src/file/serialized_reader.rs b/parquet/src/file/serialized_reader.rs index 4c895133295..f3beb57c02e 100644 --- a/parquet/src/file/serialized_reader.rs +++ b/parquet/src/file/serialized_reader.rs @@ -730,6 +730,7 @@ impl PageReader for SerializedPageReader { if let Some(buffered_header) = next_page_header.take() { // The next page header has already been peeked, so just advance the offset *offset += buffered_header.compressed_page_size as usize; + *remaining_bytes -= buffered_header.compressed_page_size as usize; } else { let mut read = self.reader.get_read(*offset as u64, *remaining_bytes)?; @@ -1556,6 +1557,7 @@ mod tests { if i % 2 == 0 { vec.push(column_page_reader.get_next_page().unwrap().unwrap()); } else { + column_page_reader.peek_next_page().unwrap().unwrap(); column_page_reader.skip_next_page().unwrap(); } }