Return-Path: Delivered-To: apmail-activemq-camel-dev-archive@locus.apache.org Received: (qmail 70513 invoked from network); 29 Jun 2008 17:00:30 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 29 Jun 2008 17:00:30 -0000 Received: (qmail 85823 invoked by uid 500); 29 Jun 2008 17:00:27 -0000 Delivered-To: apmail-activemq-camel-dev-archive@activemq.apache.org Received: (qmail 85809 invoked by uid 500); 29 Jun 2008 17:00:27 -0000 Mailing-List: contact camel-dev-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: camel-dev@activemq.apache.org Delivered-To: mailing list camel-dev@activemq.apache.org Received: (qmail 85794 invoked by uid 99); 29 Jun 2008 17:00:27 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 29 Jun 2008 10:00:27 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 29 Jun 2008 16:59:45 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id A22EF234C14E for ; Sun, 29 Jun 2008 10:00:02 -0700 (PDT) Message-ID: <884099164.1214758801691.JavaMail.jira@brutus> Date: Sun, 29 Jun 2008 10:00:01 -0700 (PDT) From: "Claus Ibsen (JIRA)" To: camel-dev@activemq.apache.org Subject: [jira] Commented: (CAMEL-634) DeadLetterChannel default redelivery policy eclipsed expected transactional behaviour in a transacted route In-Reply-To: <1226149765.1214345460298.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/activemq/browse/CAMEL-634?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=43780#action_43780 ] Claus Ibsen commented on CAMEL-634: ----------------------------------- I am wondering if we should also cleanup? We are adding a TRANSACTED property on the Exchange that is never removed. > DeadLetterChannel default redelivery policy eclipsed expected transactional behaviour in a transacted route > ----------------------------------------------------------------------------------------------------------- > > Key: CAMEL-634 > URL: https://issues.apache.org/activemq/browse/CAMEL-634 > Project: Apache Camel > Issue Type: Bug > Components: camel-core, camel-jms > Affects Versions: 1.4.0 > Reporter: Marat Bedretdinov > Fix For: 1.5.0 > > Attachments: tx.fix.2008-06-24-16-54.patch > > > Camel routes get a DLC processor with a redelivery policy, which defaults to redeliverying a message to a destination processor up to 6 times. In case of a transacted route it is preferable that DLC's delivery policy be reset to a single attempt, so that a fan-out transacted route would not hold tx locks on destinations for too long. > The DLC's default redelivery policy has also made transactional tests not really testing tx behavior of Camel Components backed runtimes (jms brokers, etc), rather DLC would catch the exception and try to redeliver the message to destination processor and not letting the components to rollback native transactions initiated by components backed runtimes (jms, db) > The attached patch installs a property into Camel Exchange that indicates weather a route is transacted. This is done in org.apache.camel.spring.spi.TransactionInterceptor.java > DLC then checks if the flow is transacted and sets its redelivery policy to 1 > With this change JMS transactions are actually rolled back and messages are put back into the queue and then consumed again, verifying that brokers support transactions and can redeliver messages into Camel routes that were previously rolled back. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.