[
https://issues.apache.org/jira/browse/AMQ-8617?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jean-Baptiste Onofré resolved AMQ-8617.
---------------------------------------
Resolution: Fixed
> RedeliveryPolicy:Exponential Backoff + NonBlockingRedelivery = too long delays
> ------------------------------------------------------------------------------
>
> Key: AMQ-8617
> URL: https://issues.apache.org/jira/browse/AMQ-8617
> Project: ActiveMQ
> Issue Type: Bug
> Reporter: Endre Stølsvik
> Assignee: Jean-Baptiste Onofré
> Priority: Minor
> Fix For: 5.18.0, 5.17.3
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> Scenario on client:
> # Employing RedeliveryPolicy with exponential backoff (keeping maximum
> redeliveries at default 6)
> # Enabled non-blocking redelivery
> # Receiving e.g. 100 consecutive poison messages which are rolled back
> repeatedly (which eventually should DLQ after max redeliveries)
> This will result in massive redelivery delays due to a logic bug.
> The reason is that redeliveryDelay is a field variable kept on the
> ActiveMQMessageConsumer, instead of being a property on the message - or that
> the redelivery delay was calculated per message based on the redelivery count.
> When consecutive messages rollbacks multiple times, the redeliveryDelay field
> is continuously multiplied by the backoff multiplier, resulting in enormous
> delays.
> Pull Request for fix, including test:
> https://github.com/apache/activemq/pull/843
--
This message was sent by Atlassian Jira
(v8.20.10#820010)