Restarted peers do not get initial gossip
bboreham opened this issue · 2 comments
At https://github.com/weaveworks/mesh/blob/master/connection.go#L194, the incoming UID is parsed into remote
, but registerRemote()
ignores this UID and looks up the peer by name.
If the peer has restarted and reconnected, this has the effect of overwriting the new info with the old peer's info, so for instance LocalPeer.handleAddConnection()
will see it as an existing peer and not send the initial gossip to it, thus leaving it ignorant of current topology, DNS and IPAM data.
If the peer has restarted and reconnected, this has the effect of overwriting the new info with the old peer's info,
That really isn't a problem, and I suspect fixing it would require major surgery.
LocalPeer.handleAddConnection()
will see it as an existing peer and not send the initial gossip to it.
That is a problem.