Skip to content

Commit aa99e12

Browse files
ldanilekConvex, Inc.
authored and
Convex, Inc.
committed
[cluster migration] fix parallel futures (#24411)
GitOrigin-RevId: 1d571d3294aa7d5343d2fa79ca18784dbfca199c
1 parent bcc9b99 commit aa99e12

File tree

1 file changed

+23
-20
lines changed

1 file changed

+23
-20
lines changed

Diff for: crates/database/src/index_worker.rs

+23-20
Original file line numberDiff line numberDiff line change
@@ -571,26 +571,29 @@ impl<RT: Runtime> IndexWriter<RT> {
571571
// then create index entries for all documents in the retention range.
572572

573573
let (tx, rx) = mpsc::unbounded();
574-
let handles = index_selector.iterate_tables().map(|table_id| {
575-
let index_metadata = index_metadata.clone();
576-
let index_selector = index_selector.clone();
577-
let self_ = (*self).clone();
578-
let tx = tx.clone();
579-
self.runtime
580-
.spawn("index_backfill_table_snapshot", async move {
581-
tx.unbounded_send(
582-
self_
583-
.backfill_exact_snapshot_of_table(
584-
snapshot_ts,
585-
&index_selector,
586-
&index_metadata,
587-
table_id,
588-
)
589-
.await,
590-
)
591-
.unwrap();
592-
})
593-
});
574+
let handles: Vec<_> = index_selector
575+
.iterate_tables()
576+
.map(|table_id| {
577+
let index_metadata = index_metadata.clone();
578+
let index_selector = index_selector.clone();
579+
let self_ = (*self).clone();
580+
let tx = tx.clone();
581+
self.runtime
582+
.spawn("index_backfill_table_snapshot", async move {
583+
tx.unbounded_send(
584+
self_
585+
.backfill_exact_snapshot_of_table(
586+
snapshot_ts,
587+
&index_selector,
588+
&index_metadata,
589+
table_id,
590+
)
591+
.await,
592+
)
593+
.unwrap();
594+
})
595+
})
596+
.collect();
594597
for handle in handles {
595598
handle.into_join_future().await?;
596599
}

0 commit comments

Comments
 (0)