Ok, it has happened again and here is what I have from the thread dump:
- My thread that is locked:
“Timer-1” prio=1 tid=0x908568e0 nid=0x2151 waiting for monitor entry http://0x8d8a2000…0x8d8a2ed0
at java.io.BufferedReader.close(BufferedReader.java:500)
- waiting to lock <0x9f1c4228> (a java.io.InputStreamReader)
at org.jivesoftware.smack.XMPPConnection.shutdown(XMPPConnection.java:583)
at org.jivesoftware.smack.XMPPConnection.disconnect(XMPPConnection.java:643)
at org.jivesoftware.smack.XMPPConnection.disconnect(XMPPConnection.java:618)
at … some my classes here…
- Another thread created by Smack that probably causes the deadlock:
“Smack Packet Reader (293)” daemon prio=1 tid=0x8c029ca0 nid=0x1214 runnable http://0x83759000…0x83759e50
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:293)
at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:331)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:723)
- locked <0x9f1db338> (a java.lang.Object)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:68 0)
at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75)
- locked <0x9f1c42b8> (a com.sun.net.ssl.internal.ssl.AppInputStream)
at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
at sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
- locked <0x9f1c4228> (a java.io.InputStreamReader)
at java.io.InputStreamReader.read(InputStreamReader.java:167)
at java.io.BufferedReader.fill(BufferedReader.java:136)
at java.io.BufferedReader.read1(BufferedReader.java:187)
at java.io.BufferedReader.read(BufferedReader.java:261)
- locked <0x9f1c4228> (a java.io.InputStreamReader)
at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2971)
at org.xmlpull.mxp1.MXParser.more(MXParser.java:3025)
at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1384)
at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093)
at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:368)
at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:44)
at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:76)
What would you suggest?