LazyBuffers: filter buffer handles by gatesn · Pull Request #7071 · vortex-data/vortex

Conversation

@gatesn

Adds filter push-down into a BufferHandle.

This is the first step in sub-segment reads.

Signed-off-by: Nicholas Gates <nick@nickgates.com>

joseph-isaacs

Comment on lines +93 to +99

/// Unlike [`slice`](DeviceBuffer::slice), this method allocates new memory and copies the
/// selected ranges into a contiguous buffer.
///
/// # Errors
///
/// Returns an error if the device cannot allocate memory or copy the data.
fn filter(&self, ranges: &[Range<usize>]) -> VortexResult<Arc<dyn DeviceBuffer>>;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

in bytes? This translation might be hard?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we might need a few ways of slicing? Not sure...

This was referenced

Mar 20, 2026

@gatesn gatesn changed the title Add slicing to BufferHandle LazyBuffers: slicing

Mar 20, 2026

@gatesn gatesn changed the title LazyBuffers: slicing LazyBuffers: filter buffer handles

Mar 20, 2026

Labels

2 participants

@gatesn @joseph-isaacs