You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Timothy Bish (Resolved) (JIRA)" <ji...@apache.org> on 2011/10/14 15:10:11 UTC

[jira] [Resolved] (AMQ-3536) Virtual Topic Subscriber and Individual Dead Letter Queue Handling

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

Timothy Bish resolved AMQ-3536.
-------------------------------

       Resolution: Fixed
    Fix Version/s: 5.6.0

Patch applied, thanks for the great test case.
                
> 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
>             Fix For: 5.6.0
>
>         Attachments: VirtualDLQPatch.patch, activemq_dlq.xml
>
>
> 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