As a lot of you are probably seeing, PartyChat has been very flakey today. I'm still trying to figure out what's happening, so if any of you are smack experts, I could appreciate the help.
The previously running process starts reporting:
[java] Found invalid presence mode
Upon restarting, it outputs:
[java] Trouble connecting to Google Talk
and on a few occasions:
[java] Trouble connecting to Google Talk
[java] java.net.SocketException: Broken pipe
[java] at java.net.SocketOutputStream.socketWrite0(Native Method)
[java] at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
[java] at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
[java] at sun.nio.cs.StreamEncoder$CharsetSE.writeBytes(StreamEncoder.java:336)
[java] at sun.nio.cs.StreamEncoder$CharsetSE.implFlushBuffer(StreamEncoder.java:404)
[java] at sun.nio.cs.StreamEncoder$CharsetSE.implFlush(StreamEncoder.java:408)
[java] at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:152)
[java] at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:213)
[java] at java.io.BufferedWriter.flush(BufferedWriter.java:236)
[java] at org.jivesoftware.smack.PacketWriter.writePackets(PacketWriter.java:274)
[java] at org.jivesoftware.smack.PacketWriter.access$000(PacketWriter.java:40)
[java] at org.jivesoftware.smack.PacketWriter$1.run(PacketWriter.java:87)
[java] java.net.SocketException: Connection reset
[java] at java.net.SocketInputStream.read(SocketInputStream.java:168)
[java] at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
[java] at sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
[java] at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
[java] at java.io.InputStreamReader.read(InputStreamReader.java:167)
[java] at java.io.BufferedReader.fill(BufferedReader.java:136)
[java] at java.io.BufferedReader.read1(BufferedReader.java:187)
[java] at java.io.BufferedReader.read(BufferedReader.java:261)
[java] at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:2971)
[java] at org.xmlpull.mxp1.MXParser.more(MXParser.java:3025)
[java] at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1144)
[java] at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093)
[java] at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:368)
[java] at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:44)
[java] at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:76)
or
[java] java.net.SocketException: Socket closed
[java] at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:99)
[java] at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
[java] at sun.nio.cs.StreamEncoder$CharsetSE.writeBytes(StreamEncoder.java:336)
[java] at sun.nio.cs.StreamEncoder$CharsetSE.implFlushBuffer(StreamEncoder.java:404)
[java] at sun.nio.cs.StreamEncoder$CharsetSE.implFlush(StreamEncoder.java:408)
[java] at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:152)
[java] at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:213)
[java] at java.io.BufferedWriter.flush(BufferedWriter.java:236)
[java] at org.jivesoftware.smack.PacketWriter.writePackets(PacketWriter.java:274)
[java] at org.jivesoftware.smack.PacketWriter.access$000(PacketWriter.java:40)
[java] at org.jivesoftware.smack.PacketWriter$1.run(PacketWriter.java:87)
[java] javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
[java] at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:739)
[java] at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1025)
[java] at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1038)
[java] at org.jivesoftware.smack.XMPPConnection.proceedTLSReceived(XMPPConnection.java:1127)
[java] at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:313)
[java] at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:44)
[java] at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:76)
[java] Caused by: java.io.EOFException: SSL peer shut down incorrectly
[java] at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:321)
[java] at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:720)
[java] ... 6 more
[java] java.net.SocketException: Connection closed by remote host
[java] at com.sun.net.ssl.internal.ssl.SSLSocketImpl.checkWrite(SSLSocketImpl.java:1168)
[java] at com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:43)
[java] at sun.nio.cs.StreamEncoder$CharsetSE.writeBytes(StreamEncoder.java:336)
[java] at sun.nio.cs.StreamEncoder$CharsetSE.implFlushBuffer(StreamEncoder.java:404)
[java] at sun.nio.cs.StreamEncoder$CharsetSE.implFlush(StreamEncoder.java:408)
[java] at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:152)
[java] at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:213)
[java] at java.io.BufferedWriter.flush(BufferedWriter.java:236)
[java] at org.jivesoftware.smack.PacketWriter.writePackets(PacketWriter.java:274)
[java] at org.jivesoftware.smack.PacketWriter.access$000(PacketWriter.java:40)
[java] at org.jivesoftware.smack.PacketWriter$1.run(PacketWriter.java:87)
[java] java.io.EOFException: no more data available - expected end tag to close start tag from line 1, parser stopped on END_TAG seen ...... @1:342
[java] at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:3014)
[java] at org.xmlpull.mxp1.MXParser.more(MXParser.java:3025)
[java] at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1144)
[java] at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093)
[java] at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:368)
[java] at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:44)
[java] at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:76)
While getting these errors, I was able to log partychat@ in to Google Talk via GMail Chat. Running PartyChat on other machines has a little more success, but not really -- half the accounts still die, but a few are able to connect.
Before I chalk this up to some sort of weird rate-limiting issue, I'm hoping someone can give me a more plausible explanation of what be happening. Any ideas?