Thanks for catching that, this is definitely a good fix to include into 5.16.2 and 5.15.5.
On Wed, Mar 24, 2021 at 5:49 AM Jean-Baptiste Onofre <j...@nanthrax.net> wrote: > Thanks a lot ! > > I will focus to include this in 5.16.2 and 5.15.15. > > Regards > JB > > > Le 24 mars 2021 à 10:42, Jonathan Gallimore < > jonathan.gallim...@gmail.com> a écrit : > > > > New JIRA ticket is here: https://issues.apache.org/jira/browse/AMQ-8201. > > I've removed the two backport PRs and updated the commit in the PR for > > master to reference the JIRA. > > > > Many thanks! > > > > Jon > > > > On Wed, Mar 24, 2021 at 9:12 AM Jonathan Gallimore < > > jonathan.gallim...@gmail.com> wrote: > > > >> Thank you Chris, Gary and JB for the feedback, I appreciate it!. I'll > open > >> a separate JIRA ticket for this and I'll update the commit to reference > it. > >> > >> Thanks > >> > >> Jon > >> > >> On Wed, Mar 24, 2021 at 9:09 AM Jean-Baptiste Onofre <j...@nanthrax.net> > >> wrote: > >> > >>> Hi Jon, > >>> > >>> Just took a quick look on the PR and it looks good to me. > >>> > >>> Just a side note: please open the PR only based on master (not for > other > >>> branches). I do the cherry pick once master is up to date. > >>> > >>> Let’s wait other feedback before merging. > >>> > >>> Thanks, > >>> Regards > >>> JB > >>> > >>>> Le 23 mars 2021 à 20:49, Jonathan Gallimore < > >>> jonathan.gallim...@gmail.com> a écrit : > >>>> > >>>> Hi > >>>> > >>>> I've been looking at a problem I ran into here where messages are > >>> consumed, > >>>> and acknowledged, but are then later redelivered to the consumer again > >>>> after a broker restart. > >>>> > >>>> The consumer is running with transacted sessions, and looking in > >>> KahaDB, I > >>>> can see a KAHA_REMOVE_MESSAGE_COMMAND, with the local transaction ID > >>> added > >>>> to the journal, and then a KAHA_COMMIT_COMMAND after it. Some time > >>> later, I > >>>> see the exact same KAHA_REMOVE_MESSAGE_COMMAND appended to the journal > >>>> again, with the exact same transaction information, but no > >>>> corresponding KAHA_COMMIT_COMMAND. This appears to follow a > >>>> KAHA_REWRITTEN_DATA_FILE_COMMAND. > >>>> > >>>> It looks like the ack compaction method is forwarding the > >>> acknowledgement, > >>>> but not the commit - it appears that the commit is only forwarded in > the > >>>> case of an XA transaction. > >>>> > >>>> I notice that there are some tests around this in AMQ-7067. I've > >>> managed to > >>>> reproduce this with a further test case in AMQ8067Test.java, and I > have > >>>> created a PR for this here: > https://github.com/apache/activemq/pull/636 > >>> , > >>>> and backported to 5.16.x https://github.com/apache/activemq/pull/637 > >>> and > >>>> 5.15.x. https://github.com/apache/activemq/pull/638 > >>>> > >>>> Are there other cases that should be tested around this? > >>>> > >>>> Thanks > >>>> > >>>> Jon > >>> > >>> > >