You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Thomas Riccardi (JIRA)" <ji...@apache.org> on 2010/11/24 12:11:24 UTC

[jira] Updated: (AMQCPP-335) redeliveryPolicy: rollback always loops

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

Thomas Riccardi updated AMQCPP-335:
-----------------------------------

    Attachment: MaximumRedeliveries.patch

Patch on svn head.

> redeliveryPolicy: rollback always loops
> ---------------------------------------
>
>                 Key: AMQCPP-335
>                 URL: https://issues.apache.org/activemq/browse/AMQCPP-335
>             Project: ActiveMQ C++ Client
>          Issue Type: Bug
>          Components: CMS Impl
>    Affects Versions: 3.2.3
>            Reporter: Thomas Riccardi
>            Assignee: Timothy Bish
>         Attachments: MaximumRedeliveries.patch
>
>
> The MaximumRedeliveries parameter from redeliveryPolicy is broken when using transactions sessions:
> on session rollback, the message is always redelivered, even if MaximumRedeliveries is not set to -1.
> The issue is in ActiveMQConsumer::rollback() where the RedeliveryCounter is incremented in Message objects:
> ActiveMQConsumer.cpp:969: message->setRedeliveryCounter(
> and the check is done in the last MessageDispatch object:
> ActiveMQConsumer.cpp:973: lastMsg->getRedeliveryCounter()
> With
> ActiveMQConsumer.cpp:973: lastMsg->getMessage()->getRedeliveryCounter()
> the MaximumRedeliveries parameter is used correctly.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.