diff --git a/cluster.go b/cluster.go index c8cec60a2..0f998507e 100644 --- a/cluster.go +++ b/cluster.go @@ -1010,6 +1010,9 @@ func (c *Cluster) handleNodeAction(nodeAction nodeAction) error { func (c *Cluster) setStateAndBroadcast(state string) error { c.SetState(state) + if c.Static { + return nil + } // Broadcast cluster status changes to the cluster. c.Logger.Printf("broadcasting ClusterStatus: %s", state) return c.Broadcaster.SendSync(c.Status()) diff --git a/server.go b/server.go index 16b2f3747..b6c4e7996 100644 --- a/server.go +++ b/server.go @@ -62,7 +62,6 @@ type Server struct { // External handler Handler - Broadcaster Broadcaster BroadcastReceiver BroadcastReceiver systemInfo SystemInfo gcNotifier GCNotifier @@ -223,7 +222,6 @@ func NewServer(opts ...ServerOption) (*Server, error) { closing: make(chan struct{}), Cluster: NewCluster(), holder: NewHolder(), - Broadcaster: NopBroadcaster, BroadcastReceiver: NopBroadcastReceiver, diagnostics: NewDiagnosticsCollector(DefaultDiagnosticServer), systemInfo: NewNopSystemInfo(), @@ -315,19 +313,19 @@ func (s *Server) Open() error { } // Cluster settings. - s.Cluster.Broadcaster = s.Broadcaster + s.Cluster.Broadcaster = s s.Cluster.MaxWritesPerRequest = s.maxWritesPerRequest // Initialize HTTP handler. api := s.handler.GetAPI() api.Holder = s.holder - api.Broadcaster = s.Broadcaster + api.Broadcaster = s api.BroadcastHandler = s api.StatusHandler = s api.Cluster = s.Cluster // Initialize Holder. - s.holder.Broadcaster = s.Broadcaster + s.holder.Broadcaster = s // Serve handler. go s.handler.Serve(s.ln, s.closing) diff --git a/server/server.go b/server/server.go index 924a46d10..d97e36520 100644 --- a/server/server.go +++ b/server/server.go @@ -293,7 +293,6 @@ func (m *Command) SetupNetworking() error { } gossipMemberSet.Logger = m.logger m.Server.Cluster.MemberSet = gossipMemberSet - m.Server.Broadcaster = m.Server m.Server.BroadcastReceiver = gossipMemberSet return nil }