Memory Issues

Hello All,

I’'m having a great time using Jive Messenger 2.1.2 in a 80-user environment. Recently, however, I have seen a spike in CPU usage that I did not see before upgrading to 2.1.2. Essentially, messengerd.exe stay under 10% except about once per minute when it goes above 50% and stays there for about five seconds. I am running this on a Windows 2003 Server, Dual 2.8 GHz Xeon Machine. Any idea what is going on here?

Thanks,

Tim

Hey Tim,

Thanks for the report. Have you turned the audit feature on? I think that it could be the auditor writing all the packets to a file or it could be the MUC clean up process or even the garbage collector working. But if you see this increase of CPU on a regular base then it should be a Messenger’'s background process. Could you get a thread dump of the JVM while the CPU is above 50%.

Thanks,

– Gato

Gato,

Thanks for the quick reply. When running Jive Messenger in the console, memory usage goes all the way to 100% and stays around there.

Here’'s the memory dump. Let me know if you need anything else.

Full thread dump Java HotSpot™ Client VM (1.5.0-b64 mixed mode, sharing):

+“Thread-2” prio=5 tid=0x03d04b20 nid=0x16f4 runnable

at org.jivesoftware.stringprep.Stringprep.map(Stringprep.java:300)

at org.jivesoftware.stringprep.Stringprep.nameprep(Stringprep.java:50)

at org.xmpp.packet.JID.init(JID.java:198)

at org.xmpp.packet.JID.(JID.java:118)

at org.jivesoftware.messenger.roster.Roster.broadcastPresence(Roster.jav

a:413)

at org.jivesoftware.messenger.handler.PresenceUpdateHandler.broadcastUpd

ate(PresenceUpdateHandler.java:247)

at org.jivesoftware.messenger.handler.PresenceUpdateHandler.process(Pres

enceUpdateHandler.java:107)

at org.jivesoftware.messenger.handler.PresenceUpdateHandler.process(Pres

enceUpdateHandler.java:150)

at org.jivesoftware.messenger.SessionManager$ClientSessionListener.onCon

nectionClose(SessionManager.java:972)

at org.jivesoftware.messenger.spi.BasicConnection.notifyCloseListeners(B

asicConnection.java:58)

  • locked <0x23f94798> (a java.util.HashMap)

at org.jivesoftware.messenger.net.SocketConnection.close(SocketConnectio

n.java:168)

  • locked <0x23f8a7e0> (a org.jivesoftware.messenger.net.SocketConnection

)

at org.jivesoftware.messenger.SessionManager.stop(SessionManager.java:10

at org.jivesoftware.messenger.XMPPServer.shutdownServer(XMPPServer.java:

at org.jivesoftware.messenger.XMPPServer.access$200(XMPPServer.java:64)

at org.jivesoftware.messenger.XMPPServer$ShutdownHookThread.run(XMPPServ

er.java:547)

“SIGTERM handler” daemon prio=10 tid=0x03d03170 nid=0x1388 in Object.wait() [0x0

a3df000…0x0a3dfd6c]

at java.lang.Object.wait(Native Method)

  • waiting on <0x23dd4870> (a org.jivesoftware.messenger.XMPPServer$Shutd

ownHookThread)

at java.lang.Thread.join(Unknown Source)

  • locked <0x23dd4870> (a org.jivesoftware.messenger.XMPPServer$ShutdownH

ookThread)

at java.lang.Thread.join(Unknown Source)

at java.lang.Shutdown.runHooks(Unknown Source)

at java.lang.Shutdown.sequence(Unknown Source)

at java.lang.Shutdown.exit(Unknown Source)

  • locked <0x2b377ab8> (a java.lang.Class)

at java.lang.Terminator$1.handle(Unknown Source)

at sun.misc.Signal$1.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

“SunJsseListener1-1” prio=5 tid=0x03bbe418 nid=0x1454 in Object.wait() [0x0a1df0

00…0x0a1dfb6c]

at java.lang.Object.wait(Native Method)

  • waiting on <0x24431220> (a org.mortbay.util.ThreadPool$PoolThread)

at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:522)

  • locked <0x24431220> (a org.mortbay.util.ThreadPool$PoolThread)

“SunJsseListener1-0” prio=5 tid=0x03d78e20 nid=0x129c in Object.wait() [0x09fdf0

00…0x09fdfa6c]

at java.lang.Object.wait(Native Method)

  • waiting on <0x24431298> (a org.mortbay.util.ThreadPool$PoolThread)

at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:522)

  • locked <0x24431298> (a org.mortbay.util.ThreadPool$PoolThread)

“Acceptor [SSL: ServerSocket[addr=0.0.0.0/0.0.0.0,port=0,localport=9091]]” prio=

5 tid=0x03d78808 nid=0x16d4 runnable

at java.net.PlainSocketImpl.socketAccept(Native Method)

at java.net.PlainSocketImpl.accept(Unknown Source)

  • locked <0x244313b8> (a java.net.SocksSocketImpl)

at java.net.ServerSocket.implAccept(Unknown Source)

at com.sun.net.ssl.internal.ssl.SSLServerSocketImpl.accept(Unknown Sourc

e)

at org.mortbay.util.ThreadedServer.acceptSocket(ThreadedServer.java:423)

at org.mortbay.util.ThreadedServer$Acceptor.run(ThreadedServer.java:608)

“SocketListener0-1” prio=5 tid=0x03d1e980 nid=0x820 in Object.wait() [0x09bdf000

…0x09bdf9ec]

at java.lang.Object.wait(Native Method)

  • waiting on <0x24431550> (a org.mortbay.util.ThreadPool$PoolThread)

at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:522)

  • locked <0x24431550> (a org.mortbay.util.ThreadPool$PoolThread)

“SocketListener0-0” prio=5 tid=0x03d1e800 nid=0x2c4 in Object.wait() [0x099df000

…0x099dfc6c]

at java.lang.Object.wait(Native Method)

  • waiting on <0x244315c8> (a org.mortbay.util.ThreadPool$PoolThread)

at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:522)

  • locked <0x244315c8> (a org.mortbay.util.ThreadPool$PoolThread)

“Acceptor ServerSocket[addr=0.0.0.0/0.0.0.0,port=0,localport=9090]” prio=5 tid=0

x03d51228 nid=0xa28 runnable

at java.net.PlainSocketImpl.socketAccept(Native Method)

at java.net.PlainSocketImpl.accept(Unknown Source)

  • locked <0x244316b8> (a java.net.SocksSocketImpl)

at java.net.ServerSocket.implAccept(Unknown Source)

at java.net.ServerSocket.accept(Unknown Source)

at org.mortbay.util.ThreadedServer.acceptSocket(ThreadedServer.java:423)

at org.mortbay.util.ThreadedServer$Acceptor.run(ThreadedServer.java:608)

“SessionScavenger” daemon prio=5 tid=0x03d0a638 nid=0x1458 waiting on condition

at java.lang.Thread.sleep(Native Method)

at org.mortbay.jetty.servlet.AbstractSessionManager$SessionScavenger.run

(AbstractSessionManager.java:604)

“SRT reader” daemon prio=5 tid=0x03c0fb98 nid=0x15a4 runnable [0x091df000…0x091

dfa6c]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x24234ca0> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03c0f008 nid=0x16fc runnable [0x08fdf000…0x08f

df9ec]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x24234d38> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1144)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03cfc158 nid=0x7ec waiting on condition [0x08dd

f000…0x08ddfaec]

at java.lang.Thread.sleep(Native Method)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:156)

“SRT reader” daemon prio=5 tid=0x03c741e8 nid=0xbc8 runnable [0x08bdf000…0x08bd

fb6c]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x241f9710> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03c735c0 nid=0x143c runnable [0x089df000…0x089

dfbec]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x242545a8> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03c6f438 nid=0x1364 runnable [0x087df000…0x087

dfcec]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x241e4ed0> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03c6ed18 nid=0x738 runnable [0x085df000…0x085d

fc6c]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x24239288> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03c6dd90 nid=0x16e8 waiting on condition [0x083

df000…0x083dfd6c]

at java.lang.Thread.sleep(Native Method)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:156)

“SRT reader” daemon prio=5 tid=0x03b6daf0 nid=0xca4 runnable [0x081df000…0x081d

f9ec]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x24181a20> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03b6c9a8 nid=0x1370 runnable [0x07fdf000…0x07f

dfa6c]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x24156ad8> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03b693f8 nid=0x13ec runnable [0x07ddf000…0x07d

dfaec]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x24126c90> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03cb2720 nid=0x17e4 runnable [0x07bdf000…0x07b

dfb6c]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x240f69a0> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03cba160 nid=0x13f0 waiting on condition [0x077

df000…0x077dfc6c]

at java.lang.Thread.sleep(Native Method)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:156)

“SRT reader” daemon prio=5 tid=0x03cc6d60 nid=0x12dc runnable [0x075df000…0x075

dfcec]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x240aff10> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03cd1008 nid=0x1600 runnable [0x073df000…0x073

dfd6c]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x240bc3e0> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03cb8a60 nid=0x1578 runnable [0x071df000…0x071

dfa6c]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x2406af80> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03cd3d30 nid=0x10d4 runnable [0x06fdf000…0x06f

df9ec]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x240733e8> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03cae9f0 nid=0x210 runnable [0x069df000…0x069d

fc6c]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x24012628> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03cafb88 nid=0x12a8 runnable [0x067df000…0x067

dfbec]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x24037cb8> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03cd0e68 nid=0x1310 runnable [0x065df000…0x065

dfcec]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x24012a68> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03cab318 nid=0x1154 waiting on condition [0x05f

df000…0x05fdfa6c]

at java.lang.Thread.sleep(Native Method)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:156)

“Rollover” daemon prio=5 tid=0x03cf3a20 nid=0x9f4 waiting on condition [0x05ddf0

00…0x05ddfaec]

at java.lang.Thread.sleep(Native Method)

at org.mortbay.util.RolloverFileOutputStream$Rollover.run(RolloverFileOu

tputStream.java:302)

“SRT reader” daemon prio=5 tid=0x03ccb7f0 nid=0x5e4 runnable [0x05bdf000…0x05bd

fb6c]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x23f89490> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“pool-1-thread-1” prio=5 tid=0x03c78ff8 nid=0x120 waiting on condition [0x059df0

00…0x059dfbec]

at sun.misc.Unsafe.park(Native Method)

at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)

at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject

.awaitNanos(Unknown Source)

at java.util.concurrent.DelayQueue.take(Unknown Source)

at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.tak

e(Unknown Source)

at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.tak

e(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

“SRT reader” daemon prio=5 tid=0x03c7dbc8 nid=0x624 runnable [0x057df000…0x057d

fc6c]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x23f15250> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SRT reader” daemon prio=5 tid=0x03c76cd8 nid=0x530 runnable [0x053df000…0x053d

fcec]

at java.net.SocketInputStream.socketRead0(Native Method)

at java.net.SocketInputStream.read(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)

at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)

at sun.nio.cs.StreamDecoder.read(Unknown Source)

  • locked <0x23f70458> (a java.io.InputStreamReader)

at java.io.InputStreamReader.read(Unknown Source)

at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2972)

at org.xmlpull.mxp1.MXParser.more(MXParser.java:3026)

at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)

at org.xmlpull.mxp1.MXParser.nextToken(MXParser.java:1100)

at org.dom4j.io.XPPPacketReader.parseDocument(XPPPacketReader.java:268)

at org.jivesoftware.messenger.net.SocketReadThread.readStream(SocketRead

Thread.java:181)

at org.jivesoftware.messenger.net.SocketReadThread.run(SocketReadThread.

java:110)

“SAT accept” daemon prio=5 tid=0x03c78980 nid=0x598 runnable [0x051df000…0x051d

f9ec]

at java.net.PlainSocketImpl.socketAccept(Native Method)

at java.net.PlainSocketImpl.accept(Unknown Source)

  • locked <0x23f534c0> (a java.net.SocksSocketImpl)

at java.net.ServerSocket.implAccept(Unknown Source)

at java.net.ServerSocket.accept(Unknown Source)

at org.jivesoftware.messenger.net.SocketAcceptThread.run(SocketAcceptThr

ead.java:114)

“SSL accept” daemon prio=5 tid=0x03c7f968 nid=0x720 runnable [0x04fdf000…0x04fd

fa6c]

at java.net.PlainSocketImpl.socketAccept(Native Method)

at java.net.PlainSocketImpl.accept(Unknown Source)

  • locked <0x23f53598> (a java.net.SocksSocketImpl)

at java.net.ServerSocket.implAccept(Unknown Source)

at com.sun.net.ssl.internal.ssl.SSLServerSocketImpl.accept(Unknown Sourc

e)

at org.jivesoftware.messenger.net.SSLSocketAcceptThread.run(SSLSocketAcc

eptThread.java:134)

“Thread-1” daemon prio=5 tid=0x03f1bbd0 nid=0x17d4 waiting on condition [0x0455f

000…0x0455fd6c]

at java.lang.Thread.sleep(Native Method)

at org.jivesoftware.database.ConnectionPool.run(ConnectionPool.java:349)

at java.lang.Thread.run(Unknown Source)

“HSQLDB Timer @5483cd” daemon prio=5 tid=0x03f21a40 nid=0x1714 in Object.wait()

at java.lang.Object.wait(Native Method)

  • waiting on <0x2300bf38> (a org.hsqldb.lib.HsqlTimer)

at org.hsqldb.lib.HsqlTimer.nextTask(Unknown Source)

  • locked <0x2300bf38> (a org.hsqldb.lib.HsqlTimer)

at org.hsqldb.lib.HsqlTimer$TaskRunner.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

“Low Memory Detector” daemon prio=5 tid=0x00acaea8 nid=0x1180 runnable [0x000000

00…0x00000000]

“CompilerThread0” daemon prio=10 tid=0x003f2eb8 nid=0x608 waiting on condition [

0x00000000…0x0375f844]

“Signal Dispatcher” daemon prio=10 tid=0x00ac8ee8 nid=0x10b8 waiting on conditio

n

“Finalizer” daemon prio=9 tid=0x00ac6178 nid=0x1104 in Object.wait() [0x0335f000

…0x0335fc6c]

at java.lang.Object.wait(Native Method)

  • waiting on <0x22fcb4d0> (a java.lang.ref.ReferenceQueue$Lock)

at java.lang.ref.ReferenceQueue.remove(Unknown Source)

  • locked <0x22fcb4d0> (a java.lang.ref.ReferenceQueue$Lock)

at java.lang.ref.ReferenceQueue.remove(Unknown Source)

at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)

“Reference Handler” daemon prio=10 tid=0x00ac4cc0 nid=0x718 in Object.wait() [0x

0106f000…0x0106fcec]

at java.lang.Object.wait(Native Method)

  • waiting on <0x22fcb550> (a java.lang.ref.Reference$Lock)

at java.lang.Object.wait(Unknown Source)

at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)

  • locked <0x22fcb550> (a java.lang.ref.Reference$Lock)

“main” prio=5 tid=0x003fce38 nid=0x1474 waiting on condition [0x00000000…0x0022

bc54]

“VM Thread” prio=10 tid=0x00ac3cc8 nid=0x5a0 runnable

“VM Periodic Task Thread” prio=10 tid=0x00ae59a0 nid=0x13e8 waiting on condition+

Thanks,

Tim

Hey Tim,

Have you generated the thread dump while the CPU was above 50%?. I only see one thread actually working.

Is your memory or CPU at 100%? If you are consuming all your memory then I guess that Java is trying to collect as much garbage as possible and thus making the server slow. If this is the case then you should increase the maximum memory available for the JVM. BTW, you should also set the -server switch when starting the server so the JVM can use server oriented optimizations.

Other thing you want to try out is download and install the latest nightly build which includes many performance optimizations.

Regards,

– Gato