You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Alvin Kwekel (JIRA)" <ji...@apache.org> on 2017/10/24 13:00:02 UTC

[jira] [Created] (AMQ-6847) Immediate poison ACK after move from DLQ leads to message loss

Alvin Kwekel created AMQ-6847:
---------------------------------

             Summary: Immediate poison ACK after move from DLQ leads to message loss
                 Key: AMQ-6847
                 URL: https://issues.apache.org/jira/browse/AMQ-6847
             Project: ActiveMQ
          Issue Type: Bug
    Affects Versions: 5.15.2, 5.14.5
            Reporter: Alvin Kwekel
         Attachments: FailingReceiver.java

*Setup*
* No client re-deliveries
* Throw RuntimeException (Poison ACK) in consumer directly after receiving message

*Scenario*
* Move message from DLQ to original input queue
* Processing of message fails again directly
* The message is considered to be still on the DLQ on the rejection and ActiveMQ logs "Not adding duplicate to DLQ"

Introducing a delay before throwing the exception in the client will get around the issue.

I initially noticed the issue when using an AMQP reject (Apache Qpid Proton) after which I reproduced similar conditions (instant poison ACK) it with the JMS client. The attached Java app will reproduce the issue on 5.14.5 and 5.15.2.

Might be related to AMQ-5752.
 
2017-10-24 13:38:11,275 | DEBUG | Not adding duplicate to DLQ: ID:xxx-32848-1508845049112-6:1:1:1:1, dest: queue://TEST | org.apache.activemq.broker.region.policy.AbstractDeadLetterStrategy | ActiveMQ Transport: tcp:///127.0.0.1:36360@61616



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)