From 0992f9a70766223100163119b23b1bdba5fa02b0 Mon Sep 17 00:00:00 2001 From: Weston Pace Date: Thu, 4 Dec 2025 10:23:59 -0800 Subject: [PATCH] Fix perf regression in bitmap search --- rust/lance-index/src/scalar/bitmap.rs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/rust/lance-index/src/scalar/bitmap.rs b/rust/lance-index/src/scalar/bitmap.rs index b1e13409c91..dbb1348fc6b 100644 --- a/rust/lance-index/src/scalar/bitmap.rs +++ b/rust/lance-index/src/scalar/bitmap.rs @@ -438,10 +438,10 @@ impl ScalarIndex for BitmapIndex { if keys.is_empty() { RowAddrTreeMap::default() } else { - let bitmaps: Vec<_> = stream::iter(keys.into_iter().map(|key| { - let this = self.clone(); - async move { this.load_bitmap(&key, None).await } - })) + let bitmaps: Vec<_> = stream::iter( + keys.into_iter() + .map(|key| async move { self.load_bitmap(&key, None).await }), + ) .buffer_unordered(get_num_compute_intensive_cpus()) .try_collect() .await?; @@ -476,10 +476,10 @@ impl ScalarIndex for BitmapIndex { RowAddrTreeMap::default() } else { // Load bitmaps in parallel - let mut bitmaps: Vec<_> = stream::iter(keys.into_iter().map(|key| { - let this = self.clone(); - async move { this.load_bitmap(&key, None).await } - })) + let mut bitmaps: Vec<_> = stream::iter( + keys.into_iter() + .map(|key| async move { self.load_bitmap(&key, None).await }), + ) .buffer_unordered(get_num_compute_intensive_cpus()) .try_collect() .await?;