I think https://issues.apache.org/jira/browse/AMQ-5854 is what you need.
In short, it is not feasible to try and retain transaction integrity for
consumed messages when a failover event happens.

In your case, the transaction will rollback and the message will go to the
dlq. The scenario is that the first consumer gets the message and acks in a
transaction.
there is a failover, so the state is recreated, connection, multiple
consumers, transaction etc. However the broker dispatches to another
consumer, (the order of consumer recreation and of broker dispatch is not
deterministic) so the app would see a duplicate if this message gets
dispatched to another consumer while the current transaction is pending a
redelivery. It gets messy and it turns out that there are way to many
different failure scenarios to try and account for. Hence AMQ-5854 which
makes it very clear that an inflight transaction with pending acks will
rollback if there is a failover.


On Mon, 7 Dec 2015 at 02:25 yang.yang.zz <yang.yang...@outlook.com> wrote:

> I have the same problem and my version is 5.11.1.
>
> Does AMQ-5795 solve this problem?
>
>
>
> --
> View this message in context:
> http://activemq.2283324.n4.nabble.com/What-is-duplicate-delivery-poison-ack-tp4688299p4704648.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>

Reply via email to