-
Bug
-
Resolution: Done
-
Major
-
2.6.1
-
None
When starting concurrent members the following occurs:
Lets say we want to start members
{A,B,C,D,E}on the same host, with num_initial_members set to 1 and port_range set to 2. We ensure A has started before attempting to start B-E.
I found the following when starting C:
1) FindInitialMembers in ClientGMSIMpl returns A successfully.
2) JOIN_REQ sent to A but times out
3) FindInitialMembers requested again
4) Join_RSP arrives from A, thread waiting for FindInitialMembers is woken up and returns an empty list of members
5) ClientGMSImpl decides that it is the only member in the group and so becomes a coordinator.
Now, in C the MERGE protocol finds that mutiple coordinator exists but does not do anything as it is not a merge leader
However, A (who is the coordinator) does not have C in its initial list of host (find initial members) and so it never notices multiple coordinators and so C never joins the main group.
The only work round was to set disable_initial_coord for C so it never becomes a coordinator.
- is related to
-
JGRP-735 Discovery: ignore discovery responses from clients
- Resolved