Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Subscribers limited to one master at a time #127
Masters send notify updates to subscribers when publisher connections go up and down. This wouldn't normally be a problem, but these updates aren't just notifying when publisher xxx goes up and down.
Instead it sends the complete local publisher list which the subscriber then synchronises to. This leaves it in a great state on the local system, but will delete all other connections currently present on remote systems as well.
End result, only one master has control at a time (whoever sent the last notification).
I experimented a little this morning. The gateways can do a better job of maintaining proper connections when flipping and unflipping via use of the node's slave api and a bit of information sharing.
However the real problem is caused by masters' sending updates when publishers locally come up and down - we have no control over this right now. So yes, no way around it without some updates to the RoS framework. On the flip side (pardon the pun), I think those updates could be relatively minor.
And yes, looking back at master sync, I expect this is why they only flip remote publishers locally and local publishers remotely. Obvious in hindsight.