[jboss-user] [JBoss Cache: Core Edition] - Re: Failure Detection when group coordinator dies
luckywhd
do-not-reply at jboss.com
Fri Jul 18 03:47:08 EDT 2008
"manik.surtani at jboss.com" wrote : Have you tried using both?
I quess we cold try if that helps...
Below is a bit more detailed example of the hanging up of our cluster. It isn't excatly the same I described above (new coordinator is assigned when current dies), but still deals with the problem related to coordinator.
Nodes in the cluster: A,B,C,D,E,F
1. Node A (the current coordinator) is shut down
-> Node C becomes a new coordinator
2. Node A is restarted
-> Node A sees two candidates for the coordinator: itself and C
-> Node A's join message to node C times out, A is unable to join the cluster
3. Node E is restarted
-> Node E sees two candidates for the coordinator: node A (node A is currently dead!) and C
-> Node E's join message to node C times out, E is unable to join the cluster
4. Node C is shut down
-> Node B becomes a new coordinator
5. Node A, E and C are restarted
-> each node is able to join the cluster
Summary of the problems encountered:
- nodes were unable to join the cluster when it was assigned a new coordinator (C)
- even though ex-coordinator (A) was down, it was still seen as a candidate for the coordinator
- new coordinator (C) had to be shut down and new coordinator voted (B) in order to get the cluster working again
I'm wondering if the problem might be in shutting down the original coordinator (A). Here are the log messages of node A (10.195.0.121) when it is shut down, the missing ACK is from node C (10.195.0.123), which becomes a new coordinator:
| 12:00:09,500 INFO [resin-destroy] TreeCache:1616 - stopService(): closing the channel
| 12:00:11,567 WARN [ViewHandler] GMS:409 - failed to collect all ACKs (5) for view [10.195.0.121:60413|44] [10.195.0.123:48908, 10.195.0.112:35954, 10.195.0.122:54362, 10.195.0.120:38607, 10.195.0.105:54567] after 2000ms, missing ACKs from [10.195.0.123:48908] (received=[10.195.0.112:35954, 10.195.0.120:38607, 10.195.0.105:54567, 10.195.0.121:60413, 10.195.0.122:54362]), local_addr=10.195.0.121:60413
| 12:00:11,572 INFO [resin-destroy] TreeCache:1622 - stopService(): stopping the dispatcher
| 12:00:12,073 WARN [resin-destroy] TreeCache:413 - Unexpected error during removal. jboss.cache:service=TreeCache-Invalidation-Cluster-prod
| javax.management.InstanceNotFoundException: jboss.system:service=ServiceController
| at com.caucho.jmx.AbstractMBeanServer.invoke(AbstractMBeanServer.java:728)
| at org.jboss.system.ServiceMBeanSupport.postDeregister(ServiceMBeanSupport.java:409)
| at com.caucho.jmx.MBeanContext.unregisterMBean(MBeanContext.java:304)
| at com.caucho.jmx.MBeanContext.destroy(MBeanContext.java:565)
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at com.caucho.loader.WeakCloseListener.classLoaderDestroy(WeakCloseListener.java:86)
| at com.caucho.loader.Environment.closeGlobal(Environment.java:621)
| at com.caucho.server.resin.ResinServer.destroy(ResinServer.java:653)
| at com.caucho.server.resin.Resin$1.run(Resin.java:639)
|
When the A (10.195.0.121) is shut down, nodes B,D,E,F log:
| 12:00:09,559 INFO [UpHandler (STATE_TRANSFER)] TreeCache:5673 - viewAccepted(): [10.195.0.121:60413|44] [10.195.0.123:48908, 10.195.0.112:35954, 10.195.0.122:54362, 10.195.0.120:38607, 10.195.0.105:54567]
| 12:00:36,662 INFO [UpHandler (STATE_TRANSFER)] TreeCache:5673 - viewAccepted(): [10.195.0.123:48910|44] [10.195.0.123:48910, 10.195.0.112:35956, 10.195.0.122:54364, 10.195.0.120:38610, 10.195.0.105:54569]
|
but node C (10.195.0.123) only logs:
| 12:00:36,662 INFO [UpHandler (STATE_TRANSFER)] TreeCache:5673 - viewAccepted(): [10.195.0.123:48910|44] [10.195.0.123:48910, 10.195.0.112:35956, 10.195.0.122:54364, 10.195.0.120:38610, 10.195.0.105:54569]
|
And here's what we get when we are trying to start nodes A and E when C is coordinator:
| 16:03:06,847 WARN [DownHandler (GMS)] GMS:339 - there was more than 1 candidate for coordinator: {10.195.0.121:60413=1, 10.195.0.123:48908=3}
| 16:03:11,887 WARN [DownHandler (GMS)] GMS:127 - join(10.195.0.112:42521) sent to 10.195.0.123:48908 timed out, retrying
| 16:03:15,907 WARN [DownHandler (GMS)] GMS:339 - there was more than 1 candidate for coordinator: {10.195.0.121:60413=1, 10.195.0.123:48908=3}
| 16:03:20,920 WARN [DownHandler (GMS)] GMS:127 - join(10.195.0.112:42521) sent to 10.195.0.123:48908 timed out, retrying
| ...
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4165253#4165253
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4165253
More information about the jboss-user
mailing list