Description
I'm seeing a critical system failure when processing 10s of millions of messages. While this doesn't always happen, when it does then the failure is critical.
2022-09-09 01:34:07,602 WARN [org.apache.activemq.artemis.journal] AMQ142007: Can not find record 52,648,610 during compact replay 2022-09-09 01:34:07,602 WARN [org.apache.activemq.artemis.journal] AMQ142007: Can not find record 52,648,624 during compact replay 2022-09-09 01:34:07,602 WARN [org.apache.activemq.artemis.journal] AMQ142007: Can not find record 52,648,622 during compact replay 2022-09-09 01:34:07,602 WARN [org.apache.activemq.artemis.journal] AMQ142007: Can not find record 52,648,680 during compact replay 2022-09-09 01:34:07,602 WARN [org.apache.activemq.artemis.journal] AMQ142007: Can not find record 52,648,646 during compact replay 2022-09-09 01:34:07,602 WARN [org.apache.activemq.artemis.journal] AMQ142007: Can not find record 52,648,660 during compact replay 2022-09-09 01:34:07,602 WARN [org.apache.activemq.artemis.journal] AMQ142007: Can not find record 52,648,668 during compact replay 2022-09-09 01:34:07,602 WARN [org.apache.activemq.artemis.journal] AMQ142007: Can not find record 52,648,655 during compact replay 2022-09-09 01:39:09,457 WARN [org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl] Index 2048 out of bounds for length 2048: java.lang.ArrayIndexOutOfBoundsException: Index 2048 out of bounds for length 2048 at io.netty.util.collection.IntObjectHashMap.indexOf(IntObjectHashMap.java:345) [netty-common-4.1.77.Final.jar:4.1.77.Final] at io.netty.util.collection.IntObjectHashMap.get(IntObjectHashMap.java:114) [netty-common-4.1.77.Final.jar:4.1.77.Final] at org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl$PageCursorInfo.isRemoved(PageSubscriptionImpl.java:1149) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl$CursorIterator.moveNext(PageSubscriptionImpl.java:1399) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl$CursorIterator.next(PageSubscriptionImpl.java:1348) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl$CursorIterator.tryNext(PageSubscriptionImpl.java:1492) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.server.impl.QueueImpl.depage(QueueImpl.java:3258) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.server.impl.QueueImpl.lambda$scheduleDepage$3(QueueImpl.java:3230) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42) [artemis-commons-2.24.0.jar:] at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31) [artemis-commons-2.24.0.jar:] at org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:65) [artemis-commons-2.24.0.jar:] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [java.base:] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [java.base:] at org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) [artemis-commons-2.24.0.jar:] 2022-09-09 01:39:09,457 ERROR [org.apache.activemq.artemis.core.server] AMQ222010: Critical IO Error, shutting down the server. file=NULL, message=Index 2048 out of bounds for length 2048: java.lang.ArrayIndexOutOfBoundsException: Index 2048 out of bound s for length 2048 at io.netty.util.collection.IntObjectHashMap.indexOf(IntObjectHashMap.java:345) [netty-common-4.1.77.Final.jar:4.1.77.Final] at io.netty.util.collection.IntObjectHashMap.get(IntObjectHashMap.java:114) [netty-common-4.1.77.Final.jar:4.1.77.Final] at org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl$PageCursorInfo.isRemoved(PageSubscriptionImpl.java:1149) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl$CursorIterator.moveNext(PageSubscriptionImpl.java:1399) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl$CursorIterator.next(PageSubscriptionImpl.java:1348) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl$CursorIterator.tryNext(PageSubscriptionImpl.java:1492) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.server.impl.QueueImpl.depage(QueueImpl.java:3258) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.server.impl.QueueImpl.lambda$scheduleDepage$3(QueueImpl.java:3230) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42) [artemis-commons-2.24.0.jar:] at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31) [artemis-commons-2.24.0.jar:] at org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:65) [artemis-commons-2.24.0.jar:] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [java.base:] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [java.base:] at org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) [artemis-commons-2.24.0.jar:] 2022-09-09 01:39:09,458 WARN [org.apache.activemq.artemis.utils.actors.OrderedExecutor] Index 2048 out of bounds for length 2048: java.lang.RuntimeException: Index 2048 out of bounds for length 2048 at org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl$CursorIterator.next(PageSubscriptionImpl.java:1353) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl$CursorIterator.tryNext(PageSubscriptionImpl.java:1492) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.server.impl.QueueImpl.depage(QueueImpl.java:3258) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.core.server.impl.QueueImpl.lambda$scheduleDepage$3(QueueImpl.java:3230) [artemis-server-2.24.0.jar:2.24.0] at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42) [artemis-commons-2.24.0.jar:] at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31) [artemis-commons-2.24.0.jar:] at org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:65) [artemis-commons-2.24.0.jar:] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [java.base:] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [java.base:] at org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) [artemis-commons-2.24.0.jar:] Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 2048 out of bounds for length 2048