From 907785bd0459073468f6a4f9ffb35f176397cf85 Mon Sep 17 00:00:00 2001 From: Balaji Arun Date: Tue, 21 Jan 2025 19:58:26 -0800 Subject: [PATCH] [consensus] always wait for block qc to fetch batches --- consensus/src/block_preparer.rs | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/consensus/src/block_preparer.rs b/consensus/src/block_preparer.rs index 5db76e27ef47e..95ef3cf4a6122 100644 --- a/consensus/src/block_preparer.rs +++ b/consensus/src/block_preparer.rs @@ -50,16 +50,13 @@ impl BlockPreparer { }); let start_time = Instant::now(); - let (txns, max_txns_from_block_to_execute) = tokio::select! { - // Poll the block qc future until a QC is received. Ignore None outcomes. - Some(qc) = block_qc_fut => { - let block_voters = Some(qc.ledger_info().get_voters_bitvec().clone()); - self.payload_manager.get_transactions(block, block_voters).await - }, - result = self.payload_manager.get_transactions(block, None) => { - result - } - }?; + let block_voters = block_qc_fut + .await + .map(|qc| qc.ledger_info().get_voters_bitvec().clone()); + let (txns, max_txns_from_block_to_execute) = self + .payload_manager + .get_transactions(block, block_voters) + .await?; let txn_filter = self.txn_filter.clone(); let txn_deduper = self.txn_deduper.clone(); let txn_shuffler = self.txn_shuffler.clone();