You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Joe (Jira)" <ji...@apache.org> on 2022/08/23 20:39:00 UTC
[jira] [Created] (AMQ-9061) Memory Leak when Trying to Connect to Inactive ActiveMQ Process
Joe created AMQ-9061:
------------------------
Summary: Memory Leak when Trying to Connect to Inactive ActiveMQ Process
Key: AMQ-9061
URL: https://issues.apache.org/jira/browse/AMQ-9061
Project: ActiveMQ
Issue Type: Bug
Components: AMQP
Affects Versions: 5.15.2
Reporter: Joe
When ActiveMQ is shutdown and we try to connect, we are seeing approximately 2 threads created per second that are never closed.
Here is an example of the thread status from jstack:
{code:java}
"ActiveMQ Connection Executor: unconnected" #246 daemon prio=5 os_prio=0 tid=0x00007f43b8016000 nid=0xbc3b waiting on condition [0x00007f44401d7000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x0000000088681188> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
{code}
If it's relevant, we try to connect through an instance of ActiveMQConnectionFactory, using this function
createConnection(String userName, String password)
We do receive and catch the expected error that the connection to ActiveMQ was refused.
Of course, this eventually causes our application to crash.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)