mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-13 09:21:05 +00:00
sc-consensus-beefy: fix on-demand async state machine (#13599)
`futures_util::pending!()` macro only yields to the event loop once, resulting in many calls to the `OnDemandJustificationsEngine::next()` made by the tokio reactor even though the on-demand-engine is idle. Replace it with the correct `futures::future::pending::<()>()` function which forever yields to the event loop, which is what we want when the engine is idle. Signed-off-by: Adrian Catangiu <adrian@parity.io>
This commit is contained in:
+1
-1
@@ -207,7 +207,7 @@ impl<B: Block> OnDemandJustificationsEngine<B> {
|
||||
pub async fn next(&mut self) -> Option<BeefyVersionedFinalityProof<B>> {
|
||||
let (peer, req_info, resp) = match &mut self.state {
|
||||
State::Idle => {
|
||||
futures::pending!();
|
||||
futures::future::pending::<()>().await;
|
||||
return None
|
||||
},
|
||||
State::AwaitingResponse(peer, req_info, receiver) => {
|
||||
|
||||
Reference in New Issue
Block a user