pub(crate) struct RemainingRowGroups {
frontier: RowGroupFrontier,
row_group_reader_builder: RowGroupReaderBuilder,
}Expand description
State machine that tracks the remaining high level chunks (row groups) of Parquet data left to read.
RowGroupFrontier owns cross-row-group scan state and selects the next
work item. RowGroupReaderBuilder owns decoding for the active row group.
Fields§
§frontier: RowGroupFrontierCross-row-group scan state for queued work.
row_group_reader_builder: RowGroupReaderBuilderState for building the reader for the current row group
Implementations§
Source§impl RemainingRowGroups
impl RemainingRowGroups
pub fn new( parquet_metadata: Arc<ParquetMetaData>, row_groups: Vec<usize>, selection: Option<RowSelection>, budget: RowBudget, has_predicates: bool, row_group_reader_builder: RowGroupReaderBuilder, ) -> Self
Sourcepub fn push_data(&mut self, ranges: Vec<Range<u64>>, buffers: Vec<Bytes>)
pub fn push_data(&mut self, ranges: Vec<Range<u64>>, buffers: Vec<Bytes>)
Push new data buffers that can be used to satisfy pending requests
Sourcepub fn buffered_bytes(&self) -> u64
pub fn buffered_bytes(&self) -> u64
Return the total number of bytes buffered so far
Sourcepub fn clear_all_ranges(&mut self)
pub fn clear_all_ranges(&mut self)
Clear any staged ranges currently buffered for future decode work
Sourcepub fn try_next_reader(
&mut self,
) -> Result<DecodeResult<ParquetRecordBatchReader>, ParquetError>
pub fn try_next_reader( &mut self, ) -> Result<DecodeResult<ParquetRecordBatchReader>, ParquetError>
returns ParquetRecordBatchReader suitable for reading the next
group of rows from the Parquet data, or the list of data ranges still
needed to proceed
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RemainingRowGroups
impl !RefUnwindSafe for RemainingRowGroups
impl Send for RemainingRowGroups
impl !Sync for RemainingRowGroups
impl Unpin for RemainingRowGroups
impl UnsafeUnpin for RemainingRowGroups
impl !UnwindSafe for RemainingRowGroups
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more