remove ClusterStatus method and StatusHandler interface

gossipEventReceiver uses ReceiveMessage instead of ReceiveEvent
This commit is contained in:
Matt Jaffee 2018-06-28 14:45:20 -05:00
parent 75c1440eb5
commit 12a49c3e14
No known key found for this signature in database
GPG key ID: 08A3DFFF987B11BF
2 changed files with 7 additions and 22 deletions

View file

@ -290,13 +290,13 @@ func (g *GossipMemberSet) MergeRemoteState(buf []byte, join bool) {
// the channel, since this delegate will block until an event can be sent.
type gossipEventReceiver struct {
ch chan memberlist.NodeEvent
eventHandler pilosa.EventHandler
eventHandler *pilosa.Server
logger *log.Logger
}
// newGossipEventReceiver returns a new instance of GossipEventReceiver.
func newGossipEventReceiver(logger *log.Logger, pserver pilosa.EventHandler) *gossipEventReceiver {
func newGossipEventReceiver(logger *log.Logger, pserver *pilosa.Server) *gossipEventReceiver {
ger := &gossipEventReceiver{
ch: make(chan memberlist.NodeEvent, 1),
logger: logger,
@ -338,13 +338,13 @@ func (g *gossipEventReceiver) listen() {
if err := proto.Unmarshal(e.Node.Meta, &n); err != nil {
panic("failed to unmarshal event node meta data")
}
node := pilosa.DecodeNode(&n)
// node := pilosa.DecodeNode(&n)
ne := &pilosa.NodeEvent{
Event: nodeEventType,
Node: node,
ne := &internal.NodeEventMessage{
Event: uint32(nodeEventType),
Node: &n,
}
if err := g.eventHandler.ReceiveEvent(ne); err != nil {
if err := g.eventHandler.ReceiveMessage(ne); err != nil {
g.logger.Printf("receive event error: %s", err)
}
}

View file

@ -42,7 +42,6 @@ const (
// Ensure Server implements interfaces.
var _ Broadcaster = &Server{}
var _ BroadcastHandler = &Server{}
var _ StatusHandler = &Server{}
// Server represents a holder wrapped by a running HTTP server.
type Server struct {
@ -557,11 +556,6 @@ func (s *Server) LocalStatus() (proto.Message, error) {
return &ns, nil
}
// ClusterStatus returns the ClusterState and NodeSet for the cluster.
func (s *Server) ClusterStatus() (proto.Message, error) {
return s.cluster.Status(), nil
}
// HandleRemoteStatus receives incoming NodeStatus from remote nodes.
func (s *Server) HandleRemoteStatus(pb proto.Message) error {
// Ignore NodeStatus messages until the cluster is in a Normal state.
@ -733,15 +727,6 @@ func countOpenFiles() (int, error) {
}
}
// StatusHandler specifies the methods which an object must implement to share
// state in the cluster. These are used by the GossipMemberSet to implement the
// LocalState and MergeRemoteState methods of memberlist.Delegate
type StatusHandler interface {
LocalStatus() (proto.Message, error)
ClusterStatus() (proto.Message, error)
HandleRemoteStatus(proto.Message) error
}
func expandDirName(path string) (string, error) {
prefix := "~" + string(filepath.Separator)
if strings.HasPrefix(path, prefix) {