Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 363384

Summary: java.net.SocketException: Socket is not connected
Product: [RT] Jetty Reporter: jfarcand <jfarcand>
Component: websocketAssignee: Joakim Erdfelt <joakim.erdfelt>
Status: CLOSED INVALID QA Contact:
Severity: normal    
Priority: P3 CC: janb, jetty-inbox
Version: unspecified   
Target Milestone: 7.5.x   
Hardware: PC   
OS: Mac OS X - Carbon (unsup.)   
Whiteboard:

Description jfarcand CLA 2011-11-09 16:04:44 EST
Build Identifier: 8.0.2 and up

01:59:12.464 [qtp628646534-23 - /api/?_=1320717552460] DEBUG org.eclipse.jetty.server.session - sessionManager=org.eclipse.jetty.server.session.HashSessionManager@349b688e#STARTED
01:59:12.464 [qtp628646534-23 - /api/?_=1320717552460] DEBUG org.eclipse.jetty.server.session - session=null
01:59:12.464 [qtp628646534-23 - /api/?_=1320717552460] DEBUG o.e.jetty.servlet.ServletHandler - servlet /api||/ -> AtmosphereServlet
01:59:12.465 [qtp628646534-23 - /api/?_=1320717552460] DEBUG o.e.jetty.servlet.ServletHandler - chain=ApiOriginFilter->AtmosphereServlet
01:59:12.465 [qtp628646534-23 - /api/?_=1320717552460] DEBUG o.e.jetty.servlet.ServletHandler - call filter ApiOriginFilter
01:59:12.465 [qtp628646534-23 - /api/?_=1320717552460] DEBUG o.e.jetty.servlet.ServletHandler - call servlet AtmosphereServlet
01:59:12.467 [qtp628646534-22] DEBUG o.e.jetty.io.nio.ChannelEndPoint - 
java.net.SocketException: Socket is not connected
	at sun.nio.ch.SocketChannelImpl.shutdown(Native Method) ~[na:1.6.0_26]
	at sun.nio.ch.SocketChannelImpl.shutdownInput(SocketChannelImpl.java:633) ~[na:1.6.0_26]
	at sun.nio.ch.SocketAdaptor.shutdownInput(SocketAdaptor.java:360) ~[na:1.6.0_26]
	at org.eclipse.jetty.io.nio.ChannelEndPoint.shutdownInput(ChannelEndPoint.java:118) ~[jetty-io-8.0.4.v20111024.jar:8.0.4.v20111024]
	at org.eclipse.jetty.io.nio.ChannelEndPoint.fill(ChannelEndPoint.java:198) ~[jetty-io-8.0.4.v20111024.jar:8.0.4.v20111024]
	at org.eclipse.jetty.http.HttpParser.fill(HttpParser.java:949) [jetty-http-8.0.4.v20111024.jar:8.0.4.v20111024]
	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:274) [jetty-http-8.0.4.v20111024.jar:8.0.4.v20111024]
	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218) [jetty-http-8.0.4.v20111024.jar:8.0.4.v20111024]
	at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:51) [jetty-server-8.0.4.v20111024.jar:8.0.4.v20111024]
	at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:586) [jetty-io-8.0.4.v20111024.jar:8.0.4.v20111024]
	at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:44) [jetty-io-8.0.4.v20111024.jar:8.0.4.v20111024]
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598) [jetty-util-8.0.4.v20111024.jar:8.0.4.v20111024]
	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533) [jetty-util-8.0.4.v20111024.jar:8.0.4.v20111024]
	at java.lang.Thread.run(Thread.java:680) [na:1.6.0_26]

Reproducible: Always

Steps to Reproduce:
This is a user of Atmosphere that can't share a test case. But it is confirmed 8.0.1 works fine. I'm filling the issue for tracking and will try to come with a test case.
Comment 1 jfarcand CLA 2011-11-14 12:39:17 EST
OK I know how to reproduce

(1) Open a couple of connections to a WebSocketServlet
(2) Never write anything's back
(3) Close the websocket on the client.

Always reproducible
Comment 2 Jan Bartel CLA 2011-11-14 22:18:40 EST
Joakim,

Are you able to reproduce this with your websocket test harness?

Jan
Comment 3 Joakim Erdfelt CLA 2011-12-08 13:09:41 EST
Unable to reproduce on jetty-7.6 master.
Will test on jetty-8 next.
Comment 4 Joakim Erdfelt CLA 2012-07-26 13:31:53 EDT
Have been unable to reproduce this.