Memleak in Openfire 3.4.5

after running openfire for 20 days i have this objects in heap:

num #instances #bytes class name


1: 1817247 135524464 [C

2: 2361170 118636936 [Ljava.lang.Object;

3: 2735010 87520320 java.util.concurrent.ConcurrentHashMap$Segment

4: 61025 86286872 [B

5: 2829222 67901328 java.util.concurrent.locks.ReentrantLock$NonfairSync

6: 2256789 54162936 java.util.ArrayList

7: 2735010 48456704 [Ljava.util.concurrent.ConcurrentHashMap$HashEntry;

8: 1942836 46628064 java.lang.String

9: 1702752 40866048 org.dom4j.tree.DefaultAttribute

10: 1191818 28603632 org.dom4j.tree.DefaultElement

11: 486742 27902992 [Ljava.util.Hashtable$Entry;

12: 482313 23151024 java.util.concurrent.FutureTask$Sync

13: 486689 19467560 java.util.Hashtable

14: 218128 19323928 [Ljava.util.HashMap$Entry;

15: 482313 19292520 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask

16: 439632 17585280 org.jivesoftware.openfire.forms.spi.XFormFieldImpl

17: 170940 13675072 [Ljava.util.concurrent.ConcurrentHashMap$Segment;

18: 77039 9936560

19: 403639 9687336 java.util.concurrent.ConcurrentHashMap$HashEntry

20: 482960 7727360 java.util.Collections$SynchronizedSet

21: 482313 7717008 java.util.concurrent.Executors$RunnableAdapter

22: 482117 7713872 java.util.Hashtable$EntrySet

23: 230959 7390688 org.xmpp.packet.JID

24: 180398 7215920 java.util.HashMap

the java.util.concurrent.locks.ReentrantLock class is only used in the LocalLockFactory which is new in 3.4.5. so there have to be the problem.

ok, it is not the reentrantlock, it’s a memleak in jml that’s fixed in latest version.