3 Replies Latest reply on Jul 30, 2010 3:32 AM by wadahiro

    Error

    rmetzger

      Hi all,

      we are running jboss 3.2.7 on Solaris 9. The application makes heavy use of JMS queues and message driven beans.

      There are two MDBs where the second MDB is called from within the onMessage method of the first one.

      From time to time we got the effect, that the second MDB's onMessage method is not invoked anymore. In server.log the following error is logged:

      WARN [org.jboss.mq.SpyConnectionConsumer] Connection consumer closing due to error in listening thread SpyConnectionConsumer[sub=Subscription[subId=-2147483648connection=ConnectionToken:ID:2/91476312ccde6041d792d03f46808526 destination=QUEUE.PDBConsolidationConsumerQueue messageSelector=null Local Create] messages=0 waitingForMessage=false internalThread=Thread[Connection Consumer for dest Subscription[subId=-2147483648connection=ConnectionToken:ID:2/91476312ccde6041d792d03f46808526 destination=QUEUE.PDBConsolidationConsumerQueue messageSelector=null Local Create] id=2,5,jboss] sessionPool=org.jboss.jms.asf.StdServerSessionPool@165cbd2 connection=Connection@32699917[token=ConnectionToken:ID:2/91476312ccde6041d792d03f46808526 rcvstate=STARTED]]
      javax.jms.JMSSecurityException: User session is not valid
       at org.jboss.mq.security.SecurityManager.authorize(SecurityManager.java:230)
       at org.jboss.mq.security.ServerSecurityInterceptor.authorizeRead(ServerSecurityInterceptor.java:233)
       at org.jboss.mq.security.ServerSecurityInterceptor.receive(ServerSecurityInterceptor.java:98)
       at org.jboss.mq.server.TracingInterceptor.receive(TracingInterceptor.java:570)
       at org.jboss.mq.server.JMSServerInvoker.receive(JMSServerInvoker.java:226)
       at org.jboss.mq.il.jvm.JVMServerIL.receive(JVMServerIL.java:244)
       at org.jboss.mq.Connection.receive(Connection.java:957)
       at org.jboss.mq.SpyConnectionConsumer.run(SpyConnectionConsumer.java:238)
       at java.lang.Thread.run(Thread.java:534)
      


      From that time no more errors are logged, but the second MDB never gets invoked anymore.

      What is the "listening thread" in this scenario? How can we avoid this error?

      MfG - rme