mirror of
https://github.com/tendermint/tendermint.git
synced 2026-06-03 21:06:22 +00:00
do not add peer to switch if it fails to start
This commit is contained in:
@@ -547,7 +547,9 @@ func (sw *Switch) addPeer(pc peerConn) error {
|
||||
|
||||
// All good. Start peer
|
||||
if sw.IsRunning() {
|
||||
sw.startInitPeer(peer)
|
||||
if err = sw.startInitPeer(peer); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
// Add the peer to .peers.
|
||||
@@ -561,14 +563,17 @@ func (sw *Switch) addPeer(pc peerConn) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (sw *Switch) startInitPeer(peer *peer) {
|
||||
func (sw *Switch) startInitPeer(peer *peer) error {
|
||||
err := peer.Start() // spawn send/recv routines
|
||||
if err != nil {
|
||||
// Should never happen
|
||||
sw.Logger.Error("Error starting peer", "peer", peer, "err", err)
|
||||
return err
|
||||
}
|
||||
|
||||
for _, reactor := range sw.reactors {
|
||||
reactor.AddPeer(peer)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user