2 Replies Latest reply on Apr 15, 2008 9:17 AM by timfox

    JMSServerInvocationHandler deadlock

    azafran

      Similar to post http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4051404#4051404, we are facing a dead lock in the JMSServerInvocationHandler.

      JBM version 1.3.0 GA
      JBAS version 4.2.0 GA
      Java 1.5.0_08
      OS Sun sparc 5.10 on Sun-Fire-V490

      This is the stack trace of the running tread:

      Thread: WorkManager(2)-222223 : priority:5, demon:true, threadId:536697, threadState:RUNNABLE, lockName:null

      java.net.SocketOutputStream.socketWrite0(Native Method)
      java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
      java.net.SocketOutputStream.write(SocketOutputStream.java:136)
      java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
      java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123)
      java.io.DataOutputStream.flush(DataOutputStream.java:106)
      org.jboss.jms.wireformat.ClientDelivery.write(ClientDelivery.java:93)
      org.jboss.jms.wireformat.JMSWireFormat.write(JMSWireFormat.java:237)
      org.jboss.remoting.transport.socket.MicroSocketClientInvoker.versionedWrite(MicroSocketClientInvoker.java:969)
      org.jboss.remoting.transport.socket.MicroSocketClientInvoker.transport(MicroSocketClientInvoker.java:557)
      org.jboss.remoting.transport.bisocket.BisocketClientInvoker.transport(BisocketClientInvoker.java:339)
      org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:122)
      org.jboss.remoting.Client.invoke(Client.java:1550)
      org.jboss.remoting.Client.invoke(Client.java:530)
      org.jboss.remoting.Client.invokeOneway(Client.java:580)
      org.jboss.remoting.callback.ServerInvokerCallbackHandler.handleCallback(ServerInvokerCallbackHandler.java:687)
      org.jboss.remoting.callback.ServerInvokerCallbackHandler.handleCallbackOneway(ServerInvokerCallbackHandler.java:564)
      org.jboss.jms.server.endpoint.ServerConsumerEndpoint.handle(ServerConsumerEndpoint.java:296)
      org.jboss.messaging.core.local.RoundRobinPointToPointRouter.handle(RoundRobinPointToPointRouter.java:120)
      org.jboss.messaging.core.ChannelSupport.deliverInternal(ChannelSupport.java:608)
      org.jboss.messaging.core.ChannelSupport.handleInternal(ChannelSupport.java:769)
      org.jboss.messaging.core.ChannelSupport.handle(ChannelSupport.java:157)
      org.jboss.messaging.core.local.PagingFilteredQueue.handle(PagingFilteredQueue.java:114)
      org.jboss.messaging.core.plugin.postoffice.DefaultPostOffice.route(DefaultPostOffice.java:333)
      org.jboss.jms.server.endpoint.ServerConnectionEndpoint.sendMessage(ServerConnectionEndpoint.java:692)
      org.jboss.jms.server.endpoint.ServerSessionEndpoint.send(ServerSessionEndpoint.java:297)
      org.jboss.jms.server.endpoint.advised.SessionAdvised.org$jboss$jms$server$endpoint$advised$SessionAdvised$send$aop(SessionAdvised.java:80)
      org.jboss.jms.server.endpoint.advised.SessionAdvised$send_6145266547759487588.invokeNext(SessionAdvised$send_6145266547759487588.java)
      org.jboss.jms.server.container.SecurityAspect.handleSend(SecurityAspect.java:152)
      sun.reflect.GeneratedMethodAccessor430.invoke(Unknown Source)
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      java.lang.reflect.Method.invoke(Method.java:585)
      org.jboss.aop.advice.PerInstanceAdvice.invoke(PerInstanceAdvice.java:121)
      org.jboss.jms.server.endpoint.advised.SessionAdvised$send_6145266547759487588.invokeNext(SessionAdvised$send_6145266547759487588.java)
      org.jboss.jms.server.container.ServerLogInterceptor.invoke(ServerLogInterceptor.java:105)
      org.jboss.jms.server.endpoint.advised.SessionAdvised$send_6145266547759487588.invokeNext(SessionAdvised$send_6145266547759487588.java)
      org.jboss.jms.server.endpoint.advised.SessionAdvised.send(SessionAdvised.java)
      org.jboss.jms.wireformat.SessionSendRequest.serverInvoke(SessionSendRequest.java:85)
      org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:141)
      org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:734)
      org.jboss.remoting.transport.local.LocalClientInvoker.invoke(LocalClientInvoker.java:101)
      org.jboss.remoting.Client.invoke(Client.java:1550)
      org.jboss.remoting.Client.invoke(Client.java:530)
      org.jboss.remoting.Client.invoke(Client.java:518)
      org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:186)
      org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:157)
      org.jboss.jms.client.delegate.ClientSessionDelegate.org$jboss$jms$client$delegate$ClientSessionDelegate$send$aop(ClientSessionDelegate.java:446)
      org.jboss.jms.client.delegate.ClientSessionDelegate$send_6145266547759487588.invokeNext(ClientSessionDelegate$send_6145266547759487588.java)
      org.jboss.jms.client.container.SessionAspect.handleSend(SessionAspect.java:634)
      org.jboss.aop.advice.org.jboss.jms.client.container.SessionAspect28.invoke(SessionAspect28.java)
      org.jboss.jms.client.delegate.ClientSessionDelegate$send_6145266547759487588.invokeNext(ClientSessionDelegate$send_6145266547759487588.java)
      org.jboss.jms.client.container.FailoverValveInterceptor.invoke(FailoverValveInterceptor.java:91)
      org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
      org.jboss.jms.client.delegate.ClientSessionDelegate$send_6145266547759487588.invokeNext(ClientSessionDelegate$send_6145266547759487588.java)
      org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
      org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
      org.jboss.jms.client.delegate.ClientSessionDelegate$send_6145266547759487588.invokeNext(ClientSessionDelegate$send_6145266547759487588.java)
      org.jboss.jms.client.delegate.ClientSessionDelegate.send(ClientSessionDelegate.java)
      org.jboss.jms.client.container.ProducerAspect.handleSend(ProducerAspect.java:243)
      org.jboss.aop.advice.org.jboss.jms.client.container.ProducerAspect46.invoke(ProducerAspect46.java)
      org.jboss.jms.client.delegate.ClientProducerDelegate$send_3961598017717988886.invokeNext(ClientProducerDelegate$send_3961598017717988886.java)
      org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
      org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
      org.jboss.jms.client.delegate.ClientProducerDelegate$send_3961598017717988886.invokeNext(ClientProducerDelegate$send_3961598017717988886.java)
      org.jboss.jms.client.delegate.ClientProducerDelegate.send(ClientProducerDelegate.java)
      org.jboss.jms.client.JBossMessageProducer.send(JBossMessageProducer.java:164)
      org.jboss.jms.client.JBossMessageProducer.send(JBossMessageProducer.java:207)
      org.jboss.jms.client.JBossMessageProducer.send(JBossMessageProducer.java:145)
      org.jboss.jms.client.JBossMessageProducer.send(JBossMessageProducer.java:136)
      com.cisco.nm.dmm.ejb.DMMJ2EEQueueNtfsTask.publishMessage(DMMJ2EEQueueNtfsTask.java:134)


      This is a sample stack trace of a blocked tread:

      Thread: WorkerThread#70[64.104.149.89:4031] : priority:5, demon:false, threadId:539469, threadState:BLOCKED, lockName:java.lang.Class@1a31dd

      org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:105)
      org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:734)
      org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:560)
      org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:369)
      org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:165)


      Regards,
      Asaf