From 57b074f26c8d017fea4f7a1f5520c07a30380338 Mon Sep 17 00:00:00 2001 From: devopsbo3 <69951731+devopsbo3@users.noreply.github.com> Date: Fri, 10 Nov 2023 12:31:54 -0600 Subject: [PATCH] Revert "p2p: move ping handling into pingLoop goroutine (#27887)" This reverts commit 951c49dcf0a4f81394c4af9aa755f0d861806907. --- p2p/peer.go | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/p2p/peer.go b/p2p/peer.go index e800be80fc6e0..23ac11774988d 100644 --- a/p2p/peer.go +++ b/p2p/peer.go @@ -112,7 +112,6 @@ type Peer struct { wg sync.WaitGroup protoErr chan error closed chan struct{} - pingRecv chan struct{} disc chan DiscReason // events receives message send / receive events if set @@ -234,7 +233,6 @@ func newPeer(log log.Logger, conn *conn, protocols []Protocol) *Peer { disc: make(chan DiscReason), protoErr: make(chan error, len(protomap)+1), // protocols + pingLoop closed: make(chan struct{}), - pingRecv: make(chan struct{}, 16), log: log.New("id", conn.node.ID(), "conn", conn.flags), } return p @@ -295,11 +293,9 @@ loop: } func (p *Peer) pingLoop() { - defer p.wg.Done() - ping := time.NewTimer(pingInterval) + defer p.wg.Done() defer ping.Stop() - for { select { case <-ping.C: @@ -308,10 +304,6 @@ func (p *Peer) pingLoop() { return } ping.Reset(pingInterval) - - case <-p.pingRecv: - SendItems(p.rw, pongMsg) - case <-p.closed: return } @@ -338,10 +330,7 @@ func (p *Peer) handle(msg Msg) error { switch { case msg.Code == pingMsg: msg.Discard() - select { - case p.pingRecv <- struct{}{}: - case <-p.closed: - } + go SendItems(p.rw, pongMsg) case msg.Code == discMsg: // This is the last message. We don't need to discard or // check errors because, the connection will be closed after it.