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 >> >>