-
Bug
-
Resolution: Done
-
Major
-
7.4.12.GA
-
False
-
None
-
False
-
-
-
-
-
-
-
./standalone.sh watch -n 1 "./jboss-cli.sh -c :reload" # show leak wget https://github.com/check-leak/check-leak/releases/download/0.11/check-leak-0.11.jar java -jar check-leak-0.11.jar remote --pid <PID_OF_EAP> --report /tmp/report --sleep 5000
Tool https://github.com/check-leak/check-leak works on principle of reporting new maximum of instances per class. After some time report stabilize to this output
******************************************************************************************************************************* Executing... Processing histogram | 30028608 bytes (+188832)| 938394 instances (+5901)|java.lang.ref.WeakReference (java.base@11.0.18) | 12036136 bytes (+75320)| 214931 instances (+1345)|java.beans.MethodDescriptor (java.desktop@11.0.18) | 11975448 bytes (+44040)| 498977 instances (+1835)|java.lang.String (java.base@11.0.18) | 11793080 bytes (+72520)| 294827 instances (+1813)|java.lang.ref.SoftReference (java.base@11.0.18) | 10034048 bytes (+61728)| 313564 instances (+1929)|java.util.Hashtable$Entry (java.base@11.0.18) | 8111448 bytes (+50760)| 337977 instances (+2115)|java.beans.MethodRef (java.desktop@11.0.18) | 5808288 bytes (+36792)| 242012 instances (+1533)|java.util.ArrayList (java.base@11.0.18) | 5145496 bytes (+34736)| 219097 instances (+1517)|[Ljava.lang.String; (java.base@11.0.18) | 4429656 bytes (+27720)| 61523 instances (+385)|java.beans.PropertyDescriptor (java.desktop@11.0.18) | 4011600 bytes (+24512)| 62047 instances (+383)|[Ljava.util.Hashtable$Entry; (java.base@11.0.18) | 2978256 bytes (+18384)| 62047 instances (+383)|java.util.Hashtable (java.base@11.0.18) | 1847288 bytes (+11560)| 12784 instances (+80)|[Ljava.beans.MethodDescriptor; (java.desktop@11.0.18) | 771096 bytes (+4224)| 32129 instances (+176)|java.util.Collections$SynchronizedSet (java.base@11.0.18) | 728880 bytes (+4560)| 15185 instances (+95)|java.lang.ThreadGroup (java.base@11.0.18) | 717504 bytes (+4480)| 7994 instances (+50)|[Ljava.lang.Thread; (java.base@11.0.18) | 575280 bytes (+3600)| 11985 instances (+75)|java.beans.BeanDescriptor (java.desktop@11.0.18) | 524144 bytes (+3280)| 11985 instances (+75)|[Ljava.beans.PropertyDescriptor; (java.desktop@11.0.18) | 494280 bytes (+2960)| 12357 instances (+74)|java.util.WeakHashMap$Entry (java.base@11.0.18) | 479400 bytes (+3000)| 11985 instances (+75)|java.beans.GenericBeanInfo (java.desktop@11.0.18) | 473008 bytes (+2960)| 29563 instances (+185)|java.util.Hashtable$EntrySet (java.base@11.0.18) | 129504 bytes (+400)| 801 instances (+5)|[Ljava.lang.ThreadGroup; (java.base@11.0.18) | 76704 bytes (+480)| 1598 instances (+10)|org.infinispan.factories.threads.BlockingThreadFactory$ISPNBlockingThreadGroup | 76704 bytes (+480)| 1598 instances (+10)|org.infinispan.factories.threads.NonBlockingThreadFactory$ISPNNonBlockingThreadGroup | 51136 bytes (+320)| 799 instances (+5)|java.beans.EventSetDescriptor (java.desktop@11.0.18) | 40512 bytes (+240)| 844 instances (+5)|java.util.concurrent.ConcurrentSkipListMap (java.base@11.0.18) | 38352 bytes (+240)| 799 instances (+5)|org.wildfly.transaction.client.provider.jboss.JBossJTALocalTransactionProvider | 31960 bytes (+200)| 799 instances (+5)|java.beans.WeakIdentityMap$Entry (java.desktop@11.0.18) | 25568 bytes (+160)| 799 instances (+5)|com.sun.beans.finder.BeanInfoFinder (java.desktop@11.0.18) | 25568 bytes (+160)| 799 instances (+5)|java.beans.ThreadGroupContext (java.desktop@11.0.18) | 25568 bytes (+160)| 799 instances (+5)|org.wildfly.transaction.client.provider.jboss.FileSystemXAResourceRegistry | 19192 bytes (+120)| 800 instances (+5)|[Ljava.beans.EventSetDescriptor; (java.desktop@11.0.18) | 19176 bytes (+120)| 799 instances (+5)|org.wildfly.security.auth.jaspi.DelegatingAuthConfigFactory | 13472 bytes (+80)| 842 instances (+5)|java.util.concurrent.ConcurrentSkipListSet (java.base@11.0.18) | 12784 bytes (+80)| 799 instances (+5)|com.arjuna.ats.internal.jbossatx.jta.XAResourceRecoveryHelperWrapper | 12784 bytes (+80)| 799 instances (+5)|com.arjuna.ats.internal.jbossatx.jta.jca.XATerminator | 12784 bytes (+80)| 799 instances (+5)|org.wildfly.security.auth.jaspi.ElytronAuthConfigFactory | 12784 bytes (+80)| 799 instances (+5)|org.wildfly.transaction.client.provider.jboss.JBossLocalTransactionProvider$$Lambda$665/0x00000001009a9040 | 12784 bytes (+80)| 799 instances (+5)|org.wildfly.transaction.client.provider.jboss.JBossLocalTransactionProvider$XAImporterImpl
This mean those classes reach new occurence maximum each time server is reloaded. Even running GC can't stop that observation. Maximum is continuosly rising. When I stop reloading server new maxima are not reported anymore. Increasing trend can be seen also in jconsole diagrams.
Similar behaviour can be seen in EAP8. In EAP 74 the trend is much steeper, so maybe there is also different leak.
- clones
-
JBEAP-25588 (8.0.z) Memory leak on :reload operation
- Closed
- is blocked by
-
JBEAP-25715 (7.4.z) WELD-2755 - Avoid creating duplicate thread groups
- Closed
-
JBEAP-25718 (7.4.z) Avoid creating duplicate thread groups on server reload
- Closed
-
JBEAP-25771 (7.4.z) WFCORE-6533 Memory leak in ElytronDefinition / DelegatingAuthConfigFactory
- Closed
-
JBEAP-25836 (7.4.z) UNDERTOW-2309 Possible memory leak in DefaultByteBufferPool
- Closed
-
JBEAP-26223 (7.4.z) ThreadGroups leaking in the clustering subsystem
- Closed