mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Merge pull request #1406 from mrjana/bugs
Ensure add newly joined node to networknodes
This commit is contained in:
commit
173832dd19
2 changed files with 16 additions and 1 deletions
|
@ -53,6 +53,7 @@ func (nDB *NetworkDB) handleNetworkEvent(nEvent *NetworkEvent) bool {
|
||||||
n.leaveTime = time.Now()
|
n.leaveTime = time.Now()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
nDB.addNetworkNode(nEvent.NetworkID, nEvent.NodeName)
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -66,7 +67,7 @@ func (nDB *NetworkDB) handleNetworkEvent(nEvent *NetworkEvent) bool {
|
||||||
ltime: nEvent.LTime,
|
ltime: nEvent.LTime,
|
||||||
}
|
}
|
||||||
|
|
||||||
nDB.networkNodes[nEvent.NetworkID] = append(nDB.networkNodes[nEvent.NetworkID], nEvent.NodeName)
|
nDB.addNetworkNode(nEvent.NetworkID, nEvent.NodeName)
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -455,6 +455,20 @@ func (nDB *NetworkDB) LeaveNetwork(nid string) error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// addNetworkNode adds the node to the list of nodes which participate
|
||||||
|
// in the passed network only if it is not already present. Caller
|
||||||
|
// should hold the NetworkDB lock while calling this
|
||||||
|
func (nDB *NetworkDB) addNetworkNode(nid string, nodeName string) {
|
||||||
|
nodes := nDB.networkNodes[nid]
|
||||||
|
for _, node := range nodes {
|
||||||
|
if node == nodeName {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
nDB.networkNodes[nid] = append(nDB.networkNodes[nid], nodeName)
|
||||||
|
}
|
||||||
|
|
||||||
// Deletes the node from the list of nodes which participate in the
|
// Deletes the node from the list of nodes which participate in the
|
||||||
// passed network. Caller should hold the NetworkDB lock while calling
|
// passed network. Caller should hold the NetworkDB lock while calling
|
||||||
// this
|
// this
|
||||||
|
|
Loading…
Reference in a new issue