node: cleanup pex initialization (#6467)

This commit is contained in:
Sam Kleinman
2021-05-14 10:05:59 -04:00
committed by GitHub
parent 15a67b37d8
commit fa891c5a4b
5 changed files with 67 additions and 56 deletions
+12 -5
View File
@@ -10,7 +10,6 @@ import (
"time"
"github.com/gogo/protobuf/proto"
"github.com/tendermint/tendermint/crypto"
"github.com/tendermint/tendermint/libs/log"
"github.com/tendermint/tendermint/libs/service"
@@ -791,19 +790,27 @@ func (r *Router) routePeer(peerID NodeID, conn Connection, sendQueue queue) {
errCh <- r.sendPeer(peerID, conn, sendQueue)
}()
err := <-errCh
e1 := <-errCh
err := e1
_ = conn.Close()
sendQueue.close()
if e := <-errCh; err == nil {
e2 := <-errCh
if err == nil {
// The first err was nil, so we update it with the second err, which may
// or may not be nil.
err = e
err = e2
}
switch err {
case nil, io.EOF:
r.logger.Info("peer disconnected", "peer", peerID, "endpoint", conn)
r.logger.Info("peer disconnected",
"peer", peerID,
"endpoint", conn,
"err", e1,
"err2", e2,
)
default:
r.logger.Error("peer failure", "peer", peerID, "endpoint", conn, "err", err)