[ https://issues.apache.org/jira/browse/AMQ-6054?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nevin Chen updated AMQ-6054: ---------------------------- Comment: was deleted (was: Snapshot of AMQ web console before and after restart) > Durable subscriber cannot receive the existing messages after AMQ restarts > -------------------------------------------------------------------------- > > Key: AMQ-6054 > URL: https://issues.apache.org/jira/browse/AMQ-6054 > Project: ActiveMQ > Issue Type: Bug > Components: Broker > Affects Versions: 5.12.1 > Environment: Redhat Linux > Reporter: Nevin Chen > Attachments: Web Console Snapshot.png > > > *How to Reproduce* > 1. Make a durable subscription to a topic from a JMS client. > 2. Disconnect the JMS client. > 3. Send a message to the subscribed topic from another JMS client. > 4. Restart AMQ. > 5. When the duarable re-connects to AMQ, it cannot receive the message sent > in step 3. > *Cause Analysis* > The message is saved in the persistent store successfully. However, when the > message is marshalled by the class MessageMarshaller, the field > regionDestination is not marshalled and saved to persistent store. When the > message is recovered from persistent store after restart, the > regionDestination filed of Message is empty so it is unknown which topic this > message belongs to. > *Possible Cause* > In the method > org.apache.activemq.broker.region.Topic.activate(ConnectionContext context, > final DurableTopicSubscription subscription), the > subscription.isRecoveryRequired() check is always false. The message cannot > go to the subscription. -- This message was sent by Atlassian JIRA (v6.3.4#6332)