From 682a986ae883c4c02e21a41d060b437d7a2e5841 Mon Sep 17 00:00:00 2001 From: Armon Dadgar Date: Tue, 24 Dec 2013 12:36:50 -0800 Subject: [PATCH] Do not leave raft pool if we are the only member --- consul/server.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/consul/server.go b/consul/server.go index 4473a05f22..1ea8b38939 100644 --- a/consul/server.go +++ b/consul/server.go @@ -301,6 +301,13 @@ func (s *Server) Leave() error { // Leave the Raft cluster if s.raft != nil { + // Check if we have other raft nodes + peers, _ := s.raftPeers.Peers() + if len(peers) <= 1 { + s.logger.Printf("[WARN] Not leaving Raft cluster, no peers") + goto AFTER_LEAVE + } + // Get the leader leader := s.raft.Leader() if leader == nil {