[jboss-jira] [JBoss JIRA] Updated: (JBMESSAGING-1462) Message expiration is not correctly managed

Yong Hao Gao (JIRA) jira-events at lists.jboss.org
Wed Nov 3 08:38:12 EDT 2010


     [ https://jira.jboss.org/browse/JBMESSAGING-1462?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Yong Hao Gao updated JBMESSAGING-1462:
--------------------------------------

    Fix Version/s: 1.4.0.SP3.CP12
                       (was: 1.4.0.SP3.CP11)


> Message expiration is not correctly managed
> -------------------------------------------
>
>                 Key: JBMESSAGING-1462
>                 URL: https://jira.jboss.org/browse/JBMESSAGING-1462
>             Project: JBoss Messaging
>          Issue Type: Bug
>          Components: Messaging Core
>    Affects Versions: 1.4.1.GA
>         Environment: JBAS 5.0GA, JBM 1.4.1GA, persistence on Oracle 10i
>            Reporter: Ivan
>            Assignee: Yong Hao Gao
>             Fix For: 1.4.0.SP3.CP12, 1.4.8.GA
>
>         Attachments: JBMESSAGING-1462.java
>
>
> 1) A topic is created 
> 2) A durable subscriber is created fro the topic 
> 3) A message is sent on the topic 
> 4) The durable subscriber pulls the message from the topic ( receive() ) but don't ack 
> 5) The durable subscriber is closed, subscriber session.unsuscribe(name) is called but an exception is thrown and then the subsciber session is closed. 
> As result of this a message, expired, with DELIVERY_COUNT = 1 will remain on the database forever. 
> The stacktrace of the exception thrown: 
> java.lang.IllegalStateException: Cannot remove references while deliveries are in progress (Channel 521), there are 1
>         at org.jboss.messaging.core.impl.ChannelSupport.removeAllReferences(ChannelSupport.java:394)
>         at org.jboss.messaging.core.impl.postoffice.MessagingPostOffice.internalRemoveBinding(MessagingPostOffice.java:1939)
>         at org.jboss.messaging.core.impl.postoffice.MessagingPostOffice.removeBinding(MessagingPostOffice.java:474)
>         at org.jboss.jms.server.endpoint.ServerSessionEndpoint.unsubscribe(ServerSessionEndpoint.java:829)
>         at org.jboss.jms.server.endpoint.advised.SessionAdvised.org$jboss$jms$server$endpoint$advised$SessionAdvised$unsubscribe$aop(SessionAdvised.java:135)
>         at org.jboss.jms.server.endpoint.advised.SessionAdvised$unsubscribe_8775578479443985821.invokeTarget(SessionAdvised$unsubscribe_8775578479443985821.java)
>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111)
>         at org.jboss.jms.server.container.ServerLogInterceptor.invoke(ServerLogInterceptor.java:105)
>         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>         at org.jboss.jms.server.endpoint.advised.SessionAdvised.unsubscribe(SessionAdvised.java)
>         at org.jboss.jms.wireformat.SessionUnsubscribeRequest.serverInvoke(SessionUnsubscribeRequest.java:74)
>         at org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:143)
>         at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:908)
>         at org.jboss.remoting.transport.socket.ServerThread.completeInvocation(ServerThread.java:742)
>         at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:695)
>         at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:549)
>         at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:230)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jboss-jira mailing list