activemq-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alvin Kwekel (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (AMQ-6847) Immediate poison ACK after move from DLQ leads to message loss
Date Tue, 24 Oct 2017 13:41:00 GMT

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

Alvin Kwekel updated AMQ-6847:
------------------------------
    Description: 
*Setup*
* setMaximumRedeliveries(0)
* Throw RuntimeException (Poison ACK) in consumer directly after receiving message

*Scenario*
* Move message from DLQ to original input queue (either web console or JMX retryMessages)
* 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

  was:
*Setup*
* setMaximumRedeliveries(0)
* 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


> 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.14.5, 5.15.2
>            Reporter: Alvin Kwekel
>         Attachments: FailingReceiver.java, dlq-redelivery-issue.tar.gz
>
>
> *Setup*
> * setMaximumRedeliveries(0)
> * Throw RuntimeException (Poison ACK) in consumer directly after receiving message
> *Scenario*
> * Move message from DLQ to original input queue (either web console or JMX retryMessages)
> * 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)

Mime
View raw message