-
Bug
-
Resolution: Done
-
Undefined
-
None
It appears the metrics plugin sometimes holds references to auto-created / auto-deleted queues, resulting in two copies of the queue (same name, same address) in memory, with one marked destroyed. The metrics reports statistics for the destroyed queue, with the result that it reports 0 consumers and no message throughput, triggering alerts.
Path to GC root for the destroyed queue looks like this:
Class Name | Referenced Objects | Shallow Heap | Ref. Shallow Heap | Retained Heap -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl$FailureCheckAndFlushThread @ 0x5c9f010f8 activemq-failure-check-thread | 1 | 144 | 328 | 592 |- this$0 org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl @ 0x5f9ec8b00 | 1 | 96 | 328 | 1,808 | |- server org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl @ 0x5c520b730 | 1 | 256 | 328 | 10,856 | | |- metricsManager org.apache.activemq.artemis.core.server.metrics.MetricsManager @ 0x5eb46cee0 | 1 | 32 | 328 | 17,496 | | | |- meters java.util.concurrent.ConcurrentHashMap @ 0x5eb46cf00 | 1 | 64 | 328 | 17,464 | | | | |- table java.util.concurrent.ConcurrentHashMap$Node[128] @ 0x5c179a230 | 1 | 528 | 328 | 17,400 | | | | | |- [19] java.util.concurrent.ConcurrentHashMap$Node @ 0x60fdbbaf0 | 1 | 32 | 328 | 464 | | | | | | |- val java.util.ArrayList @ 0x60fdbbb68 | 1 | 24 | 328 | 112 | | | | | | | |- elementData java.lang.Object[17] @ 0x60fdbbb80 | 1 | 88 | 328 | 88 | | | | | | | | |- [1] io.micrometer.core.instrument.internal.DefaultGauge @ 0x5c243eaa0 | 1 | 24 | 328 | 72 | | | | | | | | | |- value org.apache.activemq.artemis.core.server.management.impl.ManagementServiceImpl$$Lambda$88 @ 0x5c243ebe8 | 1 | 16 | 328 | 16 | | | | | | | | | | |- arg$1 org.apache.activemq.artemis.core.server.impl.QueueImpl @ 0x5c36fc6a8 | 1 | 328 | 328 | 45,512 | | | | | | | | | | '- Total: 1 entry | 1 | 328 | 328 | | | | | | | | | | '- Total: 1 entry | 1 | 16 | 328 | | | | | | | | | '- Total: 1 entry | 1 | 24 | 328 | | | | | | | | '- Total: 1 entry | 1 | 88 | 328 | | | | | | | '- Total: 1 entry | 1 | 24 | 328 | | | | | | '- Total: 1 entry | 1 | 32 | 328 | | | | | '- Total: 1 entry | 1 | 528 | 328 | | | | '- Total: 1 entry | 1 | 64 | 328 | | | '- Total: 1 entry | 1 | 32 | 328 | | '- Total: 1 entry | 1 | 256 | 328 | '- Total: 1 entry | 1 | 96 | 328 | Total: 1 entry | 1 | 144 | 328 | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- clones
-
ENTMQBR-7243 Metrics Plugin Holds References to Destroyed Queue
- Closed