[
https://issues.apache.org/jira/browse/AMQ-5068?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13935092#comment-13935092
]
Gary Tully commented on AMQ-5068:
---------------------------------
The persisting on rollback is fine when the broker stays alive or dies after a
rollback or shuts down gracefully.
But if there is no transaction, or the broker aborts (and does not get a chance
to write any more) we have a problem.
This new solution requires writing 'before' we dispatch, so if we reread the
store we know it 'may be' a duplicate dispatch.
It is about duplicate dispatch rather than duplicate delivery.
> Support hardening/persisting the JMSRedeliveryFlag across restarts
> ------------------------------------------------------------------
>
> Key: AMQ-5068
> URL: https://issues.apache.org/jira/browse/AMQ-5068
> Project: ActiveMQ
> Issue Type: Bug
> Components: Message Store
> Affects Versions: 5.9.0
> Reporter: Gary Tully
> Labels: JMSRedelivered, persistence, recovery, redelivery
>
> WMQ supports a HARDENBO[1] flag on the redelivery flag impl. Which persists
> before dispatch. And has a corresponding performance impact.
> So we need to implement an additional journal command to persist delivery
> attempts and update the counter on restart/recovery to get parity.
> This will allow the redeliverFlag to be guaranteed to flag a potential
> duplicate dispatch in the event of a hard broker failure just after dispatch.
> [1]
> http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic=%2Fcom.ibm.mq.explorer.doc%2Fe_properties_queues.htm
--
This message was sent by Atlassian JIRA
(v6.2#6252)