[jboss-jira] [JBoss JIRA] Commented: (JBMESSAGING-1051) Failure of one JMS Server may cause VIEW to not propogate in JBM cluster

Ray Ploski (JIRA) jira-events at lists.jboss.org
Tue Aug 21 22:00:18 EDT 2007


    [ http://jira.jboss.com/jira/browse/JBMESSAGING-1051?page=comments#action_12373247 ] 
            
Ray Ploski commented on JBMESSAGING-1051:
-----------------------------------------

Found that this issue is related to using an unsupported MySQL engine - the clustering ndb engine.  This is related to mysql bug: http://bugs.mysql.com/bug.php?id=9144. Catching the exception and re-invoking the executeQuery is enough to make this work.

The error listed below comes from the surviving node of the cluster:

2007-08-21 11:43:01,779 2097431 ERROR [org.jgroups.protocols.UDP] @IncomingPacketHandler (channel=MessagingPostOffice) failed unmarshalling message
java.lang.IllegalStateException: General error message from server: "Got error 241 'Invalid schema object version' from ndbcluster"
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2001)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1168)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1279)
        at com.mysql.jdbc.Connection.execSQL(Connection.java:2281)
        at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1634)
        at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeQuery(WrappedPreparedStatement.java:236)
        at org.jboss.messaging.core.impl.JDBCPersistenceManager.mergeAndLoad(JDBCPersistenceManager.java:933)
        at org.jboss.messaging.core.impl.MessagingQueue.mergeIn(MessagingQueue.java:217)
        at org.jboss.messaging.core.impl.postoffice.MessagingPostOffice.performFailover(MessagingPostOffice.java:2924)
        at org.jboss.messaging.core.impl.postoffice.MessagingPostOffice.nodesLeft(MessagingPostOffice.java:901)
        at org.jboss.messaging.core.impl.postoffice.GroupMember$ControlMembershipListener.viewAccepted(GroupMember.java:469)
        at org.jgroups.blocks.MessageDispatcher$ProtocolAdapter.passUp(MessageDispatcher.java:735)
        at org.jgroups.blocks.RequestCorrelator.receive(RequestCorrelator.java:372)
        at org.jgroups.blocks.MessageDispatcher$ProtocolAdapter.up(MessageDispatcher.java:777)
        at org.jgroups.JChannel.up(JChannel.java:1091)
        at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:382)
        at org.jgroups.stack.ProtocolStack.receiveUpEvent(ProtocolStack.java:398)
        at org.jgroups.stack.Protocol.passUp(Protocol.java:520)
        at org.jgroups.protocols.pbcast.FLUSH.up(FLUSH.java:487)
        at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:470)
        at org.jgroups.stack.Protocol.passUp(Protocol.java:520)
        at org.jgroups.protocols.pbcast.STATE_TRANSFER.up(STATE_TRANSFER.java:158)
        at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:470)
        at org.jgroups.stack.Protocol.passUp(Protocol.java:520)
        at org.jgroups.protocols.FRAG2.up(FRAG2.java:197)
        at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:470)
        at org.jgroups.stack.Protocol.passUp(Protocol.java:520)
        at org.jgroups.protocols.pbcast.GMS.installView(GMS.java:508)
        at org.jgroups.protocols.pbcast.GMS.installView(GMS.java:422)
        at org.jgroups.protocols.pbcast.CoordGmsImpl.handleViewChange(CoordGmsImpl.java:568)
        at org.jgroups.protocols.pbcast.GMS.up(GMS.java:707)
        at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:470)
        at org.jgroups.protocols.pbcast.GMS.receiveUpEvent(GMS.java:788)
        at org.jgroups.stack.Protocol.passUp(Protocol.java:520)
        at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:258)
        at org.jgroups.stack.Protocol.receiveUpEvent(Protocol.java:470)
        at org.jgroups.stack.Protocol.passUp(Protocol.java:520)

> Failure of one JMS Server may cause VIEW to not propogate in JBM cluster
> ------------------------------------------------------------------------
>
>                 Key: JBMESSAGING-1051
>                 URL: http://jira.jboss.com/jira/browse/JBMESSAGING-1051
>             Project: JBoss Messaging
>          Issue Type: Bug
>          Components: JMS Clustering
>    Affects Versions: 1.4.0.CR1
>         Environment:  JBoss 4.2.1 EAP with JBM 1.4 HEAD running on two CentOS5  servers with a shared MySQL 5.x db.
>            Reporter: Ray Ploski
>         Assigned To: Tim Fox
>
> In a two-node JBM cluster, after one of the nodes is hard-killed (kill -9), the server cannot be restarted.  
> An "IllegalArgumentException: Cannot start post office since there is already a post office in the cluster with the same node id ([MY_SERVER_NODE]). Are you sure you have given each node a unique node id during installation?" occurs semi-frequently in a two-node JBM cluster.  
> While looking at the surviving node, you can see all members of the view (both the dead and alive) in the PostOffice.NodeIDView.
> A restart of all members of the cluster is required to resolve the issue.  
>  ERROR [org.jboss.messaging.util.ExceptionUtil] org.jboss.messaging.core.jmx.MessagingPostOfficeService at 456a5c7c startService
> java.lang.IllegalArgumentException: Cannot start post office since there is already a post office in the cluster with the same node id (172). Are you sure you have given each node a unique node id during installation?
>         at org.jboss.messaging.core.impl.postoffice.MessagingPostOffice.start(MessagingPostOffice.java:335)
>         at org.jboss.messaging.core.jmx.MessagingPostOfficeService.startService(MessagingPostOfficeService.java:413)
>         at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
>         at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:196)
>         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 org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
>         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
>         at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
>         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
>         at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
>         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
>         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
>         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
>         at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:995)
>         at $Proxy0.start(Unknown Source)
>         at org.jboss.system.ServiceController.start(ServiceController.java:417)
>         at org.jboss.system.ServiceController.start(ServiceController.java:435)
>         at org.jboss.system.ServiceController.start(ServiceController.java:435)
>         at org.jboss.system.ServiceController.start(ServiceController.java:435)
>         at org.jboss.system.ServiceController.start(ServiceController.java:435)
>         at org.jboss.system.ServiceController.start(ServiceController.java:435)
>         at org.jboss.system.ServiceController.start(ServiceController.java:435)
>         ..

-- 
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
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list