Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-3642

Implement Dead Letter Queue functionality

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.15
    • Broker-J, JMS AMQP 0-x
    • None

    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.

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            kwall Keith Wall
            orudyy Alex Rudyy
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment