Return-Path: X-Original-To: apmail-activemq-dev-archive@www.apache.org Delivered-To: apmail-activemq-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 432EFE9B3 for ; Wed, 6 Mar 2013 11:20:23 +0000 (UTC) Received: (qmail 62634 invoked by uid 500); 6 Mar 2013 11:20:23 -0000 Delivered-To: apmail-activemq-dev-archive@activemq.apache.org Received: (qmail 62088 invoked by uid 500); 6 Mar 2013 11:20:19 -0000 Mailing-List: contact dev-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@activemq.apache.org Delivered-To: mailing list dev@activemq.apache.org Received: (qmail 61750 invoked by uid 99); 6 Mar 2013 11:20:17 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 06 Mar 2013 11:20:17 +0000 Date: Wed, 6 Mar 2013 11:20:17 +0000 (UTC) From: "Martin Lichtin (JIRA)" To: dev@activemq.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (AMQ-3894) Add support for Broker based redelivery MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/AMQ-3894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13594617#comment-13594617 ] Martin Lichtin commented on AMQ-3894: ------------------------------------- A useful feature! XML tidbit, it's Also, when setting sendToDlqIfMaxRetriesExceeded="false", a message gets silently dropped when max retries is reached. Expected, and if so, worth documenting? I'd have expected the message stays in the queue. > Add support for Broker based redelivery > --------------------------------------- > > Key: AMQ-3894 > URL: https://issues.apache.org/jira/browse/AMQ-3894 > Project: ActiveMQ > Issue Type: New Feature > Components: Broker > Reporter: Gary Tully > Assignee: Gary Tully > Fix For: 5.7.0 > > > redelivery is handled by the consumer, so client side. messages pending redelivery are seen as inflight by the broker and not available to other consumers. It is possible to break the order constraint and receive messages backed up behind a message pending redelivery, but this is all local to the client consumer. > When redelivery is exhausted, the message is returned to the broker with a poison ack, which the broker responds by removing the message and doing Dead letter queue processing (DLQ). > This enhancement will allow a replacement of DLQ handling that will handle redelivery. It is based on the ideas outlined and implemented by a camel route in https://issues.apache.org/jira/browse/AMQ-2710 > The idea is a BrokerPlugin will override sendToDeadLetterQueue and resend the message to the original destination in accordance with a matching RedeliveryPolicy. The resend will use the broker schedular to implement the delayed send after the message has been acked as poison by the consumer. > So the message will essentially be enqueued at the tail of the queue and dispatched again to any available consumer. > If retries are exceeded or there is no matching redelivery policy for a destination, normal DLQ processing will take place. > This will work in conjunction with consumer/client redelivery exhaustion or using a redelivery policy in the url query of jms.redeliveryPolicy.maximumRedeliveries=0 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira