Lots of largemessages
timfox Aug 10, 2009 1:02 PMI noticed this at the weekend, when I did a kill -3:
... Heap [junit] PSYoungGen total 81600K, used 42070K [0xada40000, 0xb4af0000, 0xb4c00000) [junit] eden space 47104K, 67% used [0xada40000,0xaf96a830,0xb0840000) [junit] from space 34496K, 29% used [0xb2850000,0xb323b1d0,0xb4a00000) [junit] to space 32832K, 0% used [0xb0840000,0xb0840000,0xb2850000) [junit] PSOldGen total 498944K, used 367777K [0x74c00000, 0x93340000, 0xada40000) [junit] object space 498944K, 73% used [0x74c00000,0x8b328498,0x93340000) [junit] PSPermGen total 16384K, used 13329K [0x70c00000, 0x71c00000, 0x74c00000) [junit] object space 16384K, 81% used [0x70c00000,0x71904678,0x71c00000) [junit] [junit] [junit] num #instances #bytes class name [junit] ---------------------------------------------- [junit] 1: 708550 109925912 [B [junit] 2: 450399 28825536 org.jboss.messaging.core.remoting.impl.wireformat.SessionReceiveMessage [junit] 3: 835287 26729184 org.jboss.messaging.core.server.impl.MessageReferenceImpl [junit] 4: 14687 24820128 [I [junit] 5: 1178059 18848944 java.util.concurrent.ConcurrentLinkedQueue$Node [junit] 6: 400336 12810752 java.util.concurrent.ConcurrentHashMap$Segment [junit] 7: 307046 12281840 org.jboss.messaging.core.remoting.impl.wireformat.SessionReceiveContinuationMessage [junit] 8: 458239 10997736 java.util.concurrent.locks.ReentrantLock$NonfairSync [junit] 9: 292037 7008888 org.jboss.messaging.utils.concurrent.LinkedBlockingDeque$Node [junit] 10: 400336 6609824 [Ljava.util.concurrent.ConcurrentHashMap$HashEntry; [junit] 11: 73844 5316768 org.jboss.messaging.core.server.impl.ServerMessageImpl [junit] 12: 215287 5166888 org.jboss.messaging.utils.SimpleString [junit] 13: 43630 3897920 [C [junit] 14: 95968 3694112 [Ljava.util.HashMap$Entry; [junit] 15: 92082 3683280 java.util.HashMap [junit] 16: 29718 3456352 <constMethodKlass> [junit] 17: 170860 2733760 java.util.concurrent.atomic.AtomicInteger [junit] 18: 31652 2666920 [Ljava.lang.Object;
There was a deadlock (which was not important). But the interesting thing was there is 450K messages in memory. Seems like a lot to me.
The test in question was org.jboss.messaging.tests.integration.jms.bridge.JMSBridgeReconnectionTest.testCrashAndReconnectDestBasic_OnceAndOnlyOnce_P_LargeMessage
Looking at that test, it does not send 450K messages. Perhaps something is leaking?
Also I noticed this comment in the class:
// The bridge won't work with largeMessages & failures // https://jira.jboss.org/jira/browse/JBMESSAGING-1601
Is this still true?