activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gary Tully <>
Subject Re: XA transaction not working on Broker redelivery.
Date Wed, 17 Apr 2013 10:59:39 GMT
maybe try and build a junit test case and drive the xa transaction
completion via code, see  for an example and
combine it with from

Note, the broker redelivery resends the message to the original
destination, so it should get consumed again in a different xa

On 15 April 2013 15:11,  <> wrote:
> Hello,
> I'm having some troubles using redelivery plugin and XA transactions. I'm using a spring
listener-container and JtaTransactionManager in an application server. I'm using ActiveMQ
> When the listener receives the message, we write it into a database and send a response
message during the transaction. In order to test the rollback of the transaction, we throw
an exception before the end of transaction.
> When using client redelivery (jms.redeliveryPolicy.maximumRedeliveries=3), everything
works as expected: the response message is not sent and the message is not persisted.
> But when using broker redelivery plugin, the behavior is different. After the redelivery
delay, the message is sent again but the XA is not working anymore on the messaging side:
the response message is sent anyway. So after sending 1 message,  I end up with 1 message
in my dead letter queue (expected), an empty database (expected), and various duplicate message
responses (should be 0).
> This is my configuration of the redelivery plugin :
> <plugins>
>    <redeliveryPlugin fallbackToDeadLetter="true" sendToDlqIfMaxRetriesExceeded="true">
>      <redeliveryPolicyMap>
>        <redeliveryPolicyMap>
>          <defaultEntry>
>            <redeliveryPolicy maximumRedeliveries="6" redeliveryDelay="10000" />
>          </defaultEntry>
>        </redeliveryPolicyMap>
>      </redeliveryPolicyMap>
>    </redeliveryPlugin>
> </plugins>
> Has anyone experienced similar problems ? Am I missing something about broker redelivery
> Thank you,
> Guillaume
> _________________________________________________________________________________________________________________________
> Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou
privilegiees et ne doivent donc
> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message
par erreur, veuillez le signaler
> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques
etant susceptibles d'alteration,
> France Telecom - Orange decline toute responsabilite si ce message a ete altere, deforme
ou falsifie. Merci.
> This message and its attachments may contain confidential or privileged information that
may be protected by law;
> they should not be distributed, used or copied without authorisation.
> If you have received this email in error, please notify the sender and delete this message
and its attachments.
> As emails may be altered, France Telecom - Orange is not liable for messages that have
been modified, changed or falsified.
> Thank you.


View raw message