http://code.google.com/p/socketio-java/downloads/list
On Wed, Apr 27, 2011 at 2:10 PM, Yuri Z <vega...@gmail.com> wrote: > Can you please send me a link? > > 2011/4/28 Tad Glines <tad.gli...@gmail.com> > > > I believe there are some potential concurrency issues with the 20101204 > > version of socketio-java. Do these errors go away if you use the 20110114 > > version? > > > > On Wed, Apr 27, 2011 at 1:50 PM, Yuri Z <vega...@gmail.com> wrote: > > > > > I discovered some errors related to Socket.IO in waveinabox.net server > > log > > > and would like to report them. They all seem to be connected with > Firefox > > > socket connection. > > > > > > The first error looks like this: > > > > > > 643:DBUG::REQUEST /socket.io/xhr-multipart/ on > > > org.eclipse.jetty.server.nio.SelectChannelConnector$2@1534742 > > > 2011-04-27 > > > > > > 13:57:05.643:DBUG::sessionManager=org.eclipse.jetty.server.session.HashSessionManager@691714 > > > 2011-04-27 13:57:05.644:DBUG::session=null > > > 2011-04-27 13:57:05.644:DBUG::servlet=default > > > 2011-04-27 13:57:05.644:DBUG::servlet holder= default > > > 2011-04-27 13:57:05.644:DBUG::chain= > > > com.google.inject.servlet.GuiceFilter-28640766->default > > > 2011-04-27 13:57:05.644:DBUG::call filter > > > com.google.inject.servlet.GuiceFilter-28640766 > > > 2011-04-27 13:57:05.644:WARN::Committed before 404 null > > > 2011-04-27 13:57:05.644:WARN::/socket.io/xhr-multipart/ > > > java.lang.IllegalStateException: Committed > > > at org.eclipse.jetty.server.Response.resetBuffer(Response.java:1052) > > > at org.eclipse.jetty.server.Response.sendError(Response.java:270) > > > at org.eclipse.jetty.server.Response.sendError(Response.java:372) > > > at > > > > > > com.glines.socketio.server.transport.XHRTransport$XHRSessionHelper.handle(XHRTransport.java:137) > > > at > > > > > > com.glines.socketio.server.transport.AbstractHttpTransport.handle(AbstractHttpTransport.java:90) > > > at > > > > > > com.glines.socketio.server.SocketIOServlet.service(SocketIOServlet.java:123) > > > at > > > > > > com.glines.socketio.server.SocketIOServlet.service(SocketIOServlet.java:91) > > > at > > > > > > org.waveprotocol.box.server.rpc.ServerRpcProvider$WaveSocketIOServlet.service(ServerRpcProvider.java:536) > > > > > > If we inspect the line 536 at ServerRpcProvider we can see that it > > happens > > > in the service(ServletRequest req, ServletResponse res) method (which I > > > think is related to XHR requests, is it correct?). To test this > > suggestion I > > > tried to login using Forefox - it couldn't load the Wave Panel, even > that > > > Chrome could load it (with some delay). > > > > > > The second error looked like this: > > > [FKlmOuIJJsaW0gJslXON]: writeData(START): ~1~14~FKlmOuIJJsaW0gJslXON > > > 2011-04-27 20:18:56.464:DBUG::RESPONSE /search/ 200 > > > 2011-04-27 20:18:56.464:DBUG::EOF org.eclipse.jetty.io.EofException > > > 2011-04-27 20:18:56.944:DBUG::EXCEPTION > > > org.eclipse.jetty.io.EofException > > > at > > org.eclipse.jetty.http.HttpGenerator.flushBuffer(HttpGenerator.java:905) > > > at > > > > > > org.eclipse.jetty.server.HttpConnection.flushResponse(HttpConnection.java:757) > > > at org.eclipse.jetty.server.Response.flushBuffer(Response.java:982) > > > at > > > > > > com.glines.socketio.server.transport.XHRPollingTransport$XHRPollingSessionHelper.writeData(XHRPollingTransport.java:51) > > > at > > > > > > com.glines.socketio.server.transport.XHRPollingTransport$XHRPollingSessionHelper.customConnect(XHRPollingTransport.java:60) > > > at > > > > > > com.glines.socketio.server.transport.XHRTransport$XHRSessionHelper.connect(XHRTransport.java:323) > > > at > > > > > > com.glines.socketio.server.transport.XHRTransport.connect(XHRTransport.java:384) > > > at > > > > > > com.glines.socketio.server.transport.AbstractHttpTransport.handle(AbstractHttpTransport.java:97) > > > > > > And then: > > > java.io.IOException: Broken pipe > > > at sun.nio.ch.FileDispatcher.write0(Native Method) > > > at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47) > > > at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:122) > > > at sun.nio.ch.IOUtil.write(IOUtil.java:78) > > > at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:352) > > > at > > > > org.eclipse.jetty.io.nio.ChannelEndPoint.flush(ChannelEndPoint.java:187) > > > at > > > > > > org.eclipse.jetty.io.nio.SelectChannelEndPoint.flush(SelectChannelEndPoint.java:273) > > > at > > > > org.eclipse.jetty.http.HttpGenerator.flushBuffer(HttpGenerator.java:849) > > > at > > > > > > org.eclipse.jetty.server.HttpConnection.flushResponse(HttpConnection.java:757) > > > at org.eclipse.jetty.server.Response.flushBuffer(Response.java:982) > > > at > > > > > > com.glines.socketio.server.transport.XHRPollingTransport$XHRPollingSessionHelper.writeData(XHRPollingTransport.java:51) > > > at > > > > > > com.glines.socketio.server.transport.XHRPollingTransport$XHRPollingSessionHelper.customConnect(XHRPollingTransport.java:60) > > > at > > > > > > com.glines.socketio.server.transport.XHRTransport$XHRSessionHelper.connect(XHRTransport.java:323) > > > at > > > > > > com.glines.socketio.server.transport.XHRTransport.connect(XHRTransport.java:384) > > > > > > Both exceptions seem to be related with buffer handling for XHR > requests. > > I > > > think that this error caused the server to stop responding (the CPU was > > at > > > 100% too). The errors usually happen at relatively high load (about > 6-10 > > > logged in users). > > > > > > Every advice on how to solve it would be welcome! > > > Thanks > > > Yuri. > > > > > > > > >