Explorar el Código

rafthttp: Panic informatively when removing unknown peer ID

Amit Gupta hace 11 años
padre
commit
317e57a8a8
Se han modificado 1 ficheros con 5 adiciones y 1 borrados
  1. 5 1
      rafthttp/transport.go

+ 5 - 1
rafthttp/transport.go

@@ -132,7 +132,11 @@ func (t *transport) AddPeer(id types.ID, urls []string) {
 func (t *transport) RemovePeer(id types.ID) {
 	t.mu.Lock()
 	defer t.mu.Unlock()
-	t.peers[id].Stop()
+	if peer, ok := t.peers[id]; ok {
+		peer.Stop()
+	} else {
+		log.Panicf("rafthttp: unexpected removal of unknown peer '%d'", id)
+	}
 	delete(t.peers, id)
 	delete(t.leaderStats.Followers, id.String())
 }