Do not send regular status updates during syncing (#1375)

This commit is contained in:
blacktemplar 2020-07-22 07:39:56 +02:00 committed by GitHub
parent 2870172e0d
commit f61a7113ac
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -714,6 +714,9 @@ impl<TSpec: EthSpec> Stream for PeerManager<TSpec> {
}
}
// We don't want to update peers during syncing, since this may result in a new chain being
// synced which leads to inefficient re-downloads of blocks.
if !self.network_globals.is_syncing() {
loop {
match self.status_peers.poll_next_unpin(cx) {
Poll::Ready(Some(Ok(peer_id))) => {
@ -726,6 +729,7 @@ impl<TSpec: EthSpec> Stream for PeerManager<TSpec> {
Poll::Ready(None) | Poll::Pending => break,
}
}
}
if !self.events.is_empty() {
return Poll::Ready(Some(self.events.remove(0)));