Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
It's sometimes possible for there to be acks in the journal for messages which aren't actually in the journal any more. In this situation you would likely see messages like this in the log when starting the broker:
2020-06-24 10:28:08,630 ERROR [org.apache.activemq.artemis.core.server] AMQ224009: Cannot find message 20,491,425 2020-06-24 10:28:08,630 ERROR [org.apache.activemq.artemis.core.server] AMQ224010: Cannot find queue messages for queueID=996 on ack for messageID=20,491,432
If you run the data exp command to export the journal in this condition you'll hit a NullPointerException:
java.lang.NullPointerException at org.apache.activemq.artemis.cli.commands.tools.xml.XmlDataExporter.removeAcked(XmlDataExporter.java:279) at org.apache.activemq.artemis.cli.commands.tools.xml.XmlDataExporter.processMessageJournal(XmlDataExporter.java:267) at org.apache.activemq.artemis.cli.commands.tools.xml.XmlDataExporter.writeXMLData(XmlDataExporter.java:149) at org.apache.activemq.artemis.cli.commands.tools.xml.XmlDataExporter.writeOutput(XmlDataExporter.java:143) at org.apache.activemq.artemis.cli.commands.tools.xml.XmlDataExporter.process(XmlDataExporter.java:132) at org.apache.activemq.artemis.cli.commands.tools.xml.XmlDataExporter.execute(XmlDataExporter.java:99) at org.apache.activemq.artemis.cli.Artemis.internalExecute(Artemis.java:150)