Has the application been stable for a long period of time, or is this a new setup? Any changes to the traffic pattern? ie.. increase in number of connections, total throughput, etc.
This line has me wondering if there is some unclean exception handling leading to a leak: >> weblogic.deployment.jms.WrappedXAResource_org_apache_activemq_TransactionContext.recover(I)[Ljavax/transaction/xa/Xid >> weblogic.transaction.internal.XAResourceDescriptor.getXidsToBeRolledBack If the app code, or the Weblogic platform is not handling exception errors and this transaction recover properly, it could be leaking these resources. Leaking resources can present as an OOM. Keep in mind, 5.9.1 was released April of 2014, so that is quite dated as well. Hope this helps! -Matt Pavlovich > On Nov 22, 2021, at 9:01 AM, Mr. Spock <mgaspere...@gmail.com> wrote: > > Hi! We're using this lib: > activemq-all-5.9.1.jar > > On Sun, Nov 21, 2021 at 9:54 PM Matt Pavlovich <mattr...@gmail.com> wrote: > >> Hello- >> >> What version of AcrtiveMQ client libraries caused this? >> >> -Matt Pavlovich >> >>> On Nov 20, 2021, at 4:52 PM, Mr. Spock <mgaspere...@gmail.com> wrote: >>> >>> Hi all! >>> I'm using Weblogic 11g to connect to a external ActiveMQ broker. >>> I'm experiencing some issues on my service (OOM), and did some heapdump >>> analyze. >>> Using MAT leak report, it points to this thread. >>> Did anybody saw something like this? >>> Is a know issue? It's a perfectly normal thread? >>> [ACTIVE] ExecuteThread: '255' for queue: 'weblogic.kernel.Default >>> (self-tuning)' >>> at sun.misc.Unsafe.park(ZJ)V (Native Method) >>> at java.util.concurrent.locks.LockSupport.park(Ljava/lang/Object;)V >>> (LockSupport.java:186) >>> at >>> >> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await()V >>> (AbstractQueuedSynchronizer.java:2043) >>> at java.util.concurrent.ArrayBlockingQueue.take()Ljava/lang/Object; >>> (ArrayBlockingQueue.java:374) >>> at >>> >> org.apache.activemq.transport.FutureResponse.getResult()Lorg/apache/activemq/command/Response; >>> (FutureResponse.java:40) >>> at >>> >> org.apache.activemq.transport.ResponseCorrelator.request(Ljava/lang/Object;)Ljava/lang/Object; >>> (ResponseCorrelator.java:87) >>> at >>> >> org.apache.activemq.ActiveMQConnection.syncSendPacket(Lorg/apache/activemq/command/Command;)Lorg/apache/activemq/command/Response; >>> (ActiveMQConnection.java:1397) >>> at >>> >> org.apache.activemq.TransactionContext.recover(I)[Ljavax/transaction/xa/Xid; >>> (TransactionContext.java:651) >>> at >>> >> weblogic.deployment.jms.WrappedXAResource_org_apache_activemq_TransactionContext.recover(I)[Ljavax/transaction/xa/Xid; >>> (Unknown Source) >>> at >>> >> weblogic.transaction.internal.XAServerResourceInfo.recover(Lweblogic/transaction/internal/CoordinatorDescriptor;)[Ljavax/transaction/xa/Xid; >>> (XAServerResourceInfo.java:1038) >>> at >>> >> weblogic.transaction.internal.ServerSCInfo.recover(Ljava/lang/String;Lweblogic/transaction/internal/CoordinatorDescriptor;Lweblogic/transaction/internal/ResourceDescriptor;)[Ljavax/transaction/xa/Xid; >>> (ServerSCInfo.java:660) >>> at >>> >> weblogic.transaction.internal.XAResourceDescriptor.getXidsToBeRolledBack(Lweblogic/transaction/internal/CoordinatorDescriptor;[Lweblogic/transaction/internal/ServerSCInfo;)[Ljavax/transaction/xa/Xid; >>> (XAResourceDescriptor.java:1211) >>> at >>> >> weblogic.transaction.internal.XAResourceDescriptor.recover(Lweblogic/transaction/internal/CoordinatorDescriptor;)V >>> (XAResourceDescriptor.java:1147) >>> at >>> >> weblogic.transaction.internal.XAResourceDescriptor.access$100(Lweblogic/transaction/internal/XAResourceDescriptor;Lweblogic/transaction/internal/CoordinatorDescriptor;)V >>> (XAResourceDescriptor.java:60) >>> at weblogic.transaction.internal.XAResourceDescriptor$2.run()V >>> (XAResourceDescriptor.java:853) >>> at weblogic.work.ExecuteThread.execute(Ljava/lang/Runnable;)V >>> (ExecuteThread.java:263) >>> at weblogic.work.ExecuteThread.run()V (ExecuteThread.java:221) >>> >>> >>> Thanks!! >> >>