Skip to content

LazyBuffers: LazyBufferHandle#7091

Draft
gatesn wants to merge 1 commit intongates/lazy-buffers/slicingfrom
ngates/lazy-buffers/lazy-buffer
Draft

LazyBuffers: LazyBufferHandle#7091
gatesn wants to merge 1 commit intongates/lazy-buffers/slicingfrom
ngates/lazy-buffers/lazy-buffer

Conversation

@gatesn
Copy link
Contributor

@gatesn gatesn commented Mar 20, 2026

Summary

Closes: #000

Testing

Signed-off-by: Nicholas Gates <nick@nickgates.com>
Copy link
Contributor Author

gatesn commented Mar 20, 2026

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@gatesn gatesn changed the title Add slicing to BufferHandle LazyBuffers: LazyBufferHandle Mar 20, 2026
@codspeed-hq
Copy link

codspeed-hq bot commented Mar 20, 2026

Merging this PR will degrade performance by 76.84%

❌ 2 regressed benchmarks
✅ 1007 untouched benchmarks
⏩ 1529 skipped benchmarks1

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Mode Benchmark BASE HEAD Efficiency
Simulation like_substr_low_match 12.1 ms 38.1 ms -68.14%
Simulation like_substr_high_match 9.1 ms 39.2 ms -76.84%

Comparing ngates/lazy-buffers/lazy-buffer (9fd8a54) with ngates/lazy-buffers/slicing (d0d6558)

Open in CodSpeed

Footnotes

  1. 1529 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

///
/// Returns an error if the segment cannot be loaded or the selection cannot be
/// applied.
pub async fn materialize(&self) -> VortexResult<BufferHandle> {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

FIXME: I think we need to change SegmentSource to take a Vec so we don't end up heap-allocating hundreds of requests. This can flow all the way into the coalesced reader if we need to.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant