Failures in invoaction chain, is this a bug?
wildgeeza Apr 19, 2005 5:18 PMI'm testing various cluster configurations in 4.0.0 line. I have everything working and have been simulating nodes failures by invoking 'stop' on the MBean associated with the EJBs I want to take offline. I subsequently restart by 'touch'ing the deployment unit to get clean hot-deploy. Everything was going as expected until I hit 'destroy' one time by mistake and received the following exception and smart proxy didn't failover as I would expect:
java.lang.IllegalArgumentException: null object name at org.jboss.mx.server.registry.BasicMBeanRegistry.get(BasicMBeanRegistry.java:495) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:636) at org.jboss.invocation.jrmp.server.JRMPInvokerHA.invoke(JRMPInvokerHA.java:163) at sun.reflect.GeneratedMethodAccessor53.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261) at sun.rmi.transport.Transport$1.run(Transport.java:148) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.Transport.serviceCall(Transport.java:144) at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701) at java.lang.Thread.run(Thread.java:534) at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:247) at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:223) at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:133) at org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown Source) at org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxyHA.invoke(JRMPInvokerProxyHA.java:189) at org.jboss.invocation.MarshallingInvokerInterceptor.invoke(MarshallingInvokerInterceptor.java:73) at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46) at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:55) at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:97) at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:86) at $Proxy42.outputVersion(Unknown Source)
My thought is that since the error wasn't wrapped as a EJBException the method call is assumed to have generated 'side-effects' the client would need to handle? or am I just thinking too hard and this is a bug?
Other than the "2003-12-18" doc for "JBoss Clustering" is there a design doc anywhere that documents designed for behaviour for failure/failover scenarios in 4.x line?
I'm going to start rummaging through code and will retry this with latest stable build when I get a chance but any insights from JBoss crew would be appreciated.
Cheers,
Andrew