users@shoal.java.net

Re: Merging group issue

From: Joseph Fialli <joe.fialli_at_oracle.com>
Date: Tue, 22 Nov 2011 11:10:02 -0500

On 11/22/11 9:28 AM, Tim Shiu wrote:
> Dear Joe,
>
> Thanks a lot.
> I checkout the project from SVN and tested that they can merge
> together now.
>
> After that, I would like to ask one more question.
> Is there any mechanism to merge the dsc between these nodes to
> maintain the data in dsc is most updated?
The Master of the GMS group synchronizes its distributed state context
with the other members.
For your isolation at the beginning case, both instances are initially
masters of their one member groups.
When the isolated instances find each other, a master collision
resolution algorithm resolves which
one will be master. The instance that is not the master should
synchronize its dsc with the master.
The master will distribute its latest dsc with all other members.

-Joe
> Or it will just pick one dsc in a node and distribute among the nodes.
>
> Thank you.
>
> Regards,
> Tim.Shiu
>
> 引述 Joseph Fialli <joe.fialli_at_oracle.com>:
>
> > Tim,
> >
> > There were recent bug fixes for instances rejoining cluster checked
> > in last Thursday.
> > Using the gms-transport-module branch (that is latest shoal branch),
> > I was able to confirm two instances
> > on different machines finding each other after being started up on
> > isolated network and then having
> > the network reconnected after startup.
> > (Simulated loss of network connectivity by running ifconfig
> > <networkinterface> down followed
> > 80 seconds later by an ifconfig up to the same network interface.)
> >
> > The same fix was checked into the shoal trunk last Thursday.
> >
> > -Joe Fialli, Oracle Corp.
> >
> > P.S.
> > Just in case you do not know how to checkout and build shoal workspace,
> > there are instructions on how to check out the trunk or a branch and
> > build it at
> > the following link: http://shoal.java.net/HowToBuildSource.html.
> >
> > On 11/17/11 8:42 PM, Tim wrote:
> >> Dear Joe,
> >>
> >> Thanks for your reply.
> >>
> >> I have already set both machines with the same multicast address and
> >> port (by using the property parameter by calling
> >> GMSFactory.startGMSModule) and they are already under the same
> >> subnet. Unfortunately, they still cannot detect each other after the
> >> network connected. Do I miss any setting?
> >>
> >> The following is the program fragment to join the group.
> >>
> >> Properties props = new Properties();
> >> props.put(ServiceProviderConfigurationKeys.LOOPBACK.toString(),
> >> "true");
> >>
> >>
> props.put(ServiceProviderConfigurationKeys.FAILURE_DETECTION_TIMEOUT.toString(),
> >> "500");
> >>
> >>
> props.put(ServiceProviderConfigurationKeys.FAILURE_VERIFICATION_TIMEOUT.toString(),
> >> "500");
> >>
> >>
> props.put(ServiceProviderConfigurationKeys.FAILURE_DETECTION_RETRIES.toString(),
> >> "2");
> >>
> props.put(ServiceProviderConfigurationKeys.MULTICASTADDRESS.toString(),
> >> "228.0.0.1");
> >> props.put(ServiceProviderConfigurationKeys.MULTICASTPORT.toString(),
> >> "9800");
> >> GroupManagementService gms = (GroupManagementService)
> >> GMSFactory.startGMSModule("MACHINEA", "TESTGROUP",
> >> MemberType.CORE, props);
> >> gms.join();
> >>
> >> Thanks for your help.
> >>
> >> Regards,
> >> Tim.Shiu
> >>
> >> On 18/11/2011 3:22, Joseph Fialli wrote:
> >>> Tim,
> >>>
> >>> In addition to the same group name, the GMS clients would also have
> >>> to be using the
> >>> same multicast group address and multicast port.
> >>> Lastly, Machine A and B would have to be on the same subnet and UDP
> >>> multicast
> >>> needs to be enabled for the network and possible switches/routers.
> >>>
> >>> They would find each other over UDP multicast and form a group when
> >>> network connectivity returns.
> >>>
> >>> -Joe Fialli
> >>>
> >>> On 11/17/11 5:46 AM, tim.shiu_at_ssc-ltd.com wrote:
> >>>> Dear All,
> >>>>
> >>>> I would like to ask if there is any mechanism in Shoal that can
> merge 2
> >>>> separate groups (with same group name) into 1 after they join to the
> >>>> same network?
> >>>>
> >>>> e.g.
> >>>> Machine A and B join group separately without connect to network.
> After
> >>>> they create their own group with the same name, plug the network wire
> >>>> and connect them together. Will they merge into the same group.
> >>>>
> >>>> Thanks.
> >>>>
> >>>> Regards,
> >>>> Tim.Shiu
> >>>
> >>>
> >
>