3 Replies Latest reply on Jun 6, 2007 12:31 PM by timfox

    Exceptions and Inconsistent Display of listMessageCountersAs

    rtm333

      Hi,

      JBoss Messaging 1.3.0.GA on JBoss AS 4.2.0.GA shows the following behaviour:

      When opening and closing JMS sessions in quick succession while concurrently publishing messages at a fast rate (using the test program from JIRA JBMESSAGING-962) exceptions as the ones below are thrown on the server side:

      ...
      14:38:52,589 ERROR [ExceptionUtil] ConsumerEndpoint[2596] close [a5g2y2e-9slm11-f2kcioip-1-f2kcyvu5-10w]
      java.lang.IllegalStateException: Cannot remove references while deliveries are in progress
       at org.jboss.messaging.core.ChannelSupport.removeAllReferences(ChannelSupport.java:340)
       at org.jboss.messaging.core.plugin.postoffice.DefaultPostOffice.unbindQueue(DefaultPostOffice.java:240)
       at org.jboss.jms.server.endpoint.ServerConsumerEndpoint.localClose(ServerConsumerEndpoint.java:502)
       at org.jboss.jms.server.endpoint.ServerConsumerEndpoint.close(ServerConsumerEndpoint.java:381)
       at org.jboss.jms.server.endpoint.advised.ConsumerAdvised.org$jboss$jms$server$endpoint$advised$ConsumerAdvised$close$aop(ConsumerAdvised.java:59)
       at org.jboss.jms.server.endpoint.advised.ConsumerAdvised$close_N4742752445160157748.invokeNext(ConsumerAdvised$close_N4742752445160157748.java)
       at org.jboss.jms.server.container.ServerLogInterceptor.invoke(ServerLogInterceptor.java:105)
       at org.jboss.jms.server.endpoint.advised.ConsumerAdvised$close_N4742752445160157748.invokeNext(ConsumerAdvised$close_N4742752445160157748.java)
       at org.jboss.jms.server.endpoint.advised.ConsumerAdvised.close(ConsumerAdvised.java)
       at org.jboss.jms.wireformat.CloseRequest.serverInvoke(CloseRequest.java:66)
       at org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:141)
       at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:734)
       at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:560)
       at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:383)
       at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:165)
      14:38:52,591 WARN [Dispatcher] Cannot find object with id 2596 to register
      14:38:52,592 ERROR [ExceptionUtil] SessionEndpoint[2595] close [a5g2y2e-9slm11-f2kcioip-1-f2kcyvu8-10x]
      javax.jms.IllegalStateException: Cannot find binding for topic sub with queue name: a5g2y2e-9slm11-f2kcioip-1-f2kcyv93-10u
       at org.jboss.jms.server.endpoint.ServerConsumerEndpoint.localClose(ServerConsumerEndpoint.java:490)
       at org.jboss.jms.server.endpoint.ServerSessionEndpoint.localClose(ServerSessionEndpoint.java:795)
       at org.jboss.jms.server.endpoint.ServerSessionEndpoint.close(ServerSessionEndpoint.java:275)
       at org.jboss.jms.server.endpoint.advised.SessionAdvised.org$jboss$jms$server$endpoint$advised$SessionAdvised$close$aop(SessionAdvised.java:70)
       at org.jboss.jms.server.endpoint.advised.SessionAdvised$close_N4742752445160157748.invokeNext(SessionAdvised$close_N4742752445160157748.java)
       at org.jboss.jms.server.container.ServerLogInterceptor.invoke(ServerLogInterceptor.java:105)
       at org.jboss.jms.server.endpoint.advised.SessionAdvised$close_N4742752445160157748.invokeNext(SessionAdvised$close_N4742752445160157748.java)
       at org.jboss.jms.server.endpoint.advised.SessionAdvised.close(SessionAdvised.java)
       at org.jboss.jms.wireformat.CloseRequest.serverInvoke(CloseRequest.java:66)
       at org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:141)
       at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:734)
       at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:560)
       at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:383)
       at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:165)
      ...
      


      In addition, the result of the method listMessageCountersAsHTML() of the ServerPeer in the JMX Console shows stranded subscriptions. Even long after closing all subscriptions, this list shows still some forty entries. One of these entries is for "a5g2y2e-9slm11-f2kcioip-1-f2kcyv93-10u", mentioned in the second exception above. The result of listAllSubscriptionsAsHTML() of the used topic is empty at the same time.