[
https://issues.apache.org/jira/browse/QPID-3642?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alex Rudyy updated QPID-3642:
-----------------------------
Description:
Implement functionality to move messages into Dead Letter Queue on reaching Max
Delivery Count limit.
The Maximum Delivery Count is a property of a queue. If the client application
is unable to process a message more than a specified number of times, the then
the broker either moves the message to the specified DLQ, or it is dropped
(producing an operation log message).
If the application is unable to process a message it must call either
Session#recover() or Session#rollback() (depending on transactionality) on the
Session in use. If during recovery the broker discovers that a message has
been seen (at least) the maximum number of times then it will move the message
to the DLQ or drop the message, depending on how the queue is configured.
This feature can be enabled for a queue either through the XML configuration
for the broker, or when declaring the queue using JMX. It is also necessary to
enable a setting on the client. The feature is available for both synchronous
consumers (i.e. those using MessageConsumer#receive()) and asynchronous
consumers (i.e. those implementing MessageListener#onMessage) using all JMS
delivery modes.
When enabled for a given queue, the DLQ feature causes generation of a Dead
Letter Exchange and a Dead Letter Queue, named according to the convention
<queue_name>_DLE and <queue_name>_DLQ. If the client indicates it no longer
wishes the receive the message (by means of the Max Delivery Count feature)
then the message is routed through the dead letter exchange onto the DLQ and
removed from the original queue.
was:Implement functionality to move messages into Dead Letter Queue on
reaching Max Delivery Count limit.
> Implement Dead Letter Queue functionality
> -----------------------------------------
>
> Key: QPID-3642
> URL: https://issues.apache.org/jira/browse/QPID-3642
> Project: Qpid
> Issue Type: New Feature
> Components: Java Broker
> Reporter: Alex Rudyy
> Assignee: Alex Rudyy
> Fix For: 0.15
>
>
> Implement functionality to move messages into Dead Letter Queue on reaching
> Max Delivery Count limit.
> The Maximum Delivery Count is a property of a queue. If the client
> application is unable to process a message more than a specified number of
> times, the then the broker either moves the message to the specified DLQ, or
> it is dropped (producing an operation log message).
> If the application is unable to process a message it must call either
> Session#recover() or Session#rollback() (depending on transactionality) on
> the Session in use. If during recovery the broker discovers that a message
> has been seen (at least) the maximum number of times then it will move the
> message to the DLQ or drop the message, depending on how the queue is
> configured.
> This feature can be enabled for a queue either through the XML configuration
> for the broker, or when declaring the queue using JMX. It is also necessary
> to enable a setting on the client. The feature is available for both
> synchronous consumers (i.e. those using MessageConsumer#receive()) and
> asynchronous consumers (i.e. those implementing MessageListener#onMessage)
> using all JMS delivery modes.
> When enabled for a given queue, the DLQ feature causes generation of a Dead
> Letter Exchange and a Dead Letter Queue, named according to the convention
> <queue_name>_DLE and <queue_name>_DLQ. If the client indicates it no longer
> wishes the receive the message (by means of the Max Delivery Count feature)
> then the message is routed through the dead letter exchange onto the DLQ and
> removed from the original queue.
--
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
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]