Merge pull request #148 from JulienVdG/sync-not-ready

RFC: Remove syncNodes/syncPeers 'not Ready' special case
This commit is contained in:
Lucas Servén Marín 2021-04-21 19:49:12 +02:00 committed by GitHub
commit 166094b5ad
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -274,14 +274,10 @@ func (m *Mesh) syncNodes(e *NodeEvent) {
var diff bool
m.mu.Lock()
if !e.Node.Ready() {
level.Debug(logger).Log("msg", "received incomplete node", "node", e.Node)
// An existing node is no longer valid
// so remove it from the mesh.
if _, ok := m.nodes[e.Node.Name]; ok {
level.Info(logger).Log("msg", "node is no longer ready", "node", e.Node)
diff = true
// Trace non ready nodes with their presence in the mesh.
_, ok := m.nodes[e.Node.Name]
level.Debug(logger).Log("msg", "received non ready node", "node", e.Node, "in-mesh", ok)
}
} else {
switch e.Type {
case AddEvent:
fallthrough
@ -296,7 +292,6 @@ func (m *Mesh) syncNodes(e *NodeEvent) {
delete(m.nodes, e.Node.Name)
diff = true
}
}
m.mu.Unlock()
if diff {
level.Info(logger).Log("node", e.Node)
@ -312,14 +307,10 @@ func (m *Mesh) syncPeers(e *PeerEvent) {
// Peers are indexed by public key.
key := string(e.Peer.PublicKey)
if !e.Peer.Ready() {
level.Debug(logger).Log("msg", "received incomplete peer", "peer", e.Peer)
// An existing peer is no longer valid
// so remove it from the mesh.
if _, ok := m.peers[key]; ok {
level.Info(logger).Log("msg", "peer is no longer ready", "peer", e.Peer)
diff = true
// Trace non ready peer with their presence in the mesh.
_, ok := m.peers[key]
level.Debug(logger).Log("msg", "received non ready peer", "peer", e.Peer, "in-mesh", ok)
}
} else {
switch e.Type {
case AddEvent:
fallthrough
@ -336,7 +327,6 @@ func (m *Mesh) syncPeers(e *PeerEvent) {
delete(m.peers, key)
diff = true
}
}
m.mu.Unlock()
if diff {
level.Info(logger).Log("peer", e.Peer)