Skip to main content

Module ranges

Module ranges 

Source
Expand description

Mapping row selections onto ranges: the byte ranges of the data pages that must be fetched (RowSelection::scan_ranges) and the expansion of a selection to batch boundaries.

Page selection checks bitmap-backed selections directly, while batch expansion streams their runs using MaskRunIter.

Re-exportsยง

use super::RowSelection; ๐Ÿ”’
use super::RowSelector; ๐Ÿ”’
use crate::file::page_index::offset_index::PageLocation; ๐Ÿ”’
use arrow_buffer::BooleanBuffer; ๐Ÿ”’
use arrow_buffer::bit_chunk_iterator::BitChunks; ๐Ÿ”’
use std::ops::Range; ๐Ÿ”’

Functionsยง

expand_to_batch_boundaries_from_selectors ๐Ÿ”’
Grows each selected run to the batch boundaries containing it, merging overlapping or adjacent ranges.
scan_ranges_from_mask ๐Ÿ”’
Checks each page for a selected bit without expanding the mask into runs.
scan_ranges_from_selectors ๐Ÿ”’
Byte ranges of the data pages containing at least one selected row.