[ http://jira.jboss.com/jira/browse/JGRP-31?page=comments#action_12315095 ] B.S.Navin commented on JGRP-31: -------------------------------
Possible solution: ------------------ There is one possible solution I found to this: The merge() method in the org.jgroups.protocols.pbcast.CoordGmsImpl class sorts the coordinator list and decides who is the leader. We can add a property "merge_leader" to the pbcast.GMS protocol that defaults to false. This property means whether this member should assume itself as the merge leader or not. As it defaults to false, no existing configurations will be affected. Then in the merge() method of CoordGmsImpl, we can also check whether this property is true while deciding the leader. So if this property is true, it will itself become the merge leader. Then in cases like the one described in the example, all the members not in the initial_hosts list (the ones that join and leave the group dynamically & unpredictably) can have their merge_leader property in pbcast.GMS set to true. I have tried it and it seems to work. > Problem with MERGE2 when not using multicast > -------------------------------------------- > > Key: JGRP-31 > URL: http://jira.jboss.com/jira/browse/JGRP-31 > Project: JGroups > Type: Bug > Versions: 2.2.8 > Environment: SUN Java 1.4.2_05 > Reporter: B.S.Navin > Assignee: Bela Ban > > > Hi, > There is one case in which MERGE2 will fail while using TCPPING/UDP(without > mcast): > ======================================== > The initial_hosts property is "abc.com[7800];xyz.com[7801]". > These 2 machines are permanent group members (if they are up, they will be > members of the group). > Now there are numerous other programs on different machines that may > dynamically join and leave the group. These members are not known before hand > and cannot be specified in the initial_hosts property. > The members on abc.com and xyz.com are started and they join the same group. > Now another member from "mnop.com" starts and joins the group. The > co-ordinator will be abc.com > A network problem occurs and mnop.com is separated from abc.com and xyz.com > mnop.com forms its own single-member group with itself as the co-ordinator. > Now suppose the network problem is fixed. The MERGE2 protocol on mnop.com > periodically checks on the initial_hosts list to see if they are up. It now > finds that abc.com is reachable and decides that abc.com is the leader (by > lexical sorting) and will take care of the merging. So it does not go ahead > with the merge. > On the other hand, the MERGE2 protocol on both abc.com and xyz.com just check > if they can find members on the initial_hosts with a different co-ordinator. > Both of them never consider mnop.com as it is not in the initial_hosts list > So mnop.com will never be merged with the group. > ======================================== > Even the new MERGE3 & MERGEFAST protocols don't seem to help here. I checked > them out and found the following: > MERGEFAST works only if multicast is used, which is not my case. > MERGE3 just sends "I am co-ordinator" messages to a null destination. So in > the case where multicast is enabled, it goes to all possible members. But in > my case, with multicast disabled, the message will only be unicast to each > member of the current group. So in the above example, the "I am co-ordinator" > messages will never go to mnop.com after the network problem. > So even MERGE3 does not work in this case. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa - If you want more information on JIRA, or have a bug to report see: http://www.atlassian.com/software/jira ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ JBoss-Development mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/jboss-development
