From 0d00cdf82c3266f014ec7ef7a7717daf28e69de6 Mon Sep 17 00:00:00 2001 From: Wilmer Paulino Date: Thu, 10 Oct 2019 13:25:19 -0400 Subject: [PATCH] server: request new peer after disconnection of non-persistent peers Doing so ensures we reach our target number of outbound peers as soon as possible. This is only necessary after calls to connmgr.Remove, as these won't request a new peer connection. --- server.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/server.go b/server.go index b518a663..9f4c54d3 100644 --- a/server.go +++ b/server.go @@ -1680,6 +1680,7 @@ func (s *server) handleDonePeerMsg(state *peerState, sp *serverPeer) { s.connManager.Disconnect(sp.connReq.ID()) } else { s.connManager.Remove(sp.connReq.ID()) + go s.connManager.NewConnReq() } } @@ -2031,6 +2032,7 @@ func (s *server) outboundPeerConnected(c *connmgr.ConnReq, conn net.Conn) { s.connManager.Disconnect(c.ID()) } else { s.connManager.Remove(c.ID()) + go s.connManager.NewConnReq() } return }