[ 
https://issues.apache.org/jira/browse/AMQ-3536?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Susan Macey updated AMQ-3536:
-----------------------------

    Attachment: VirtualDLQPatch.patch

Patch + Unit test
                
> Virtual Topic Subscriber and Individual Dead Letter Queue Handling
> ------------------------------------------------------------------
>
>                 Key: AMQ-3536
>                 URL: https://issues.apache.org/jira/browse/AMQ-3536
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.0
>         Environment: Windows XP
> Fuse Message Broker version ActiveMQ trunk 
>            Reporter: Susan Macey
>         Attachments: VirtualDLQPatch.patch
>
>
> Summary: 
> Transactional Acknowledgement with Virtual Topic / Subscriber Queues does not 
> indicate which subscriber had a problem consuming the messages. Messages are 
> simply delivered to Topic specific DLQ rather than to the Subscriber/Consumer 
> specific DLQ.
> Steps to create issue:
> Configure the Individual Dead Letter Queue policy in Fuse Message Broker. 
> Next create an ActiveMQ Virtual Topic with Subscriber Queue(s).
> Send messages to Virtual Topic
> Rollback/abort ack for one message (consistently) until this message gets 
> delivered to the dead letter queue.
> Result:
> Message is sent to the Topic Specific Dead Letter Queue rather than to the 
> DLQ specific to the Subscriber Queue.
> Resolution:
> Patch and unit test are are attached.
> This test verifies that all undelivered messages sent to a consumers 
> listening on a queue associated with a virtual topic with be forwarded to 
> separate DLQ's.
> Note that the broker config, Individual Dead Letter Strategy, needs to have 
> the enable audit set to false to allows duplicate messages sent from a topic 
> to individual consumers to be forwarded to the DLQ's.
>   
> <deadLetterStrategy>
>       <bean xmlns="http://www.springframework.org/schema/beans"; 
> class="org.apache.activemq.broker.region.policy.IndividualDeadLetterStrategy">
>               <property name="useQueueForQueueMessages" 
> value="true"></property>
>                 <property name="processNonPersistent" value="true"></property>
>                 <property name="processExpired" value="false"></property>
>                 <property name="enableAudit" value="false"></property>
>         </bean>
> </deadLetterStrategy>
>               

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to