diff --git a/internal/p2p/pqueue.go b/internal/p2p/pqueue.go index 0e62c87d9..e4560c7bd 100644 --- a/internal/p2p/pqueue.go +++ b/internal/p2p/pqueue.go @@ -257,7 +257,11 @@ func (s *pqScheduler) process() { s.metrics.PeerSendBytesTotal.With( "chID", chIDStr, "peer_id", string(pqEnv.envelope.To)).Add(float64(pqEnv.size)) - s.dequeueCh <- pqEnv.envelope + select { + case s.dequeueCh <- pqEnv.envelope: + case <-s.closer.Done(): + return + } } case <-s.closer.Done():