https://issues.apache.org/bugzilla/show_bug.cgi?id=56304
Bug ID: 56304
Summary: WebSocket send locks and timeout does not occur after
20 seconds
Product: Tomcat 7
Version: 7.0.52
Hardware: PC
OS: Linux
Status: NEW
Severity: major
Priority: P2
Component: Catalina
Assignee: [email protected]
Reporter: [email protected]
Created attachment 31429
--> https://issues.apache.org/bugzilla/attachment.cgi?id=31429&action=edit
Extract from thread dump
Start a WebSocket server on one computer.
Connect from aonther using a browser.
Starts sending messages from server to client periodically.
Turn off wifi or unplug network cable on client side. Initially Tomcat appears
to be sending messages but eventually one of the sends hangs indefinitely.
The 20 second timeout as documented on the WebSocket FAQ does not occur and
attempts to close the WebSocket session from another thread also locks that
thread as well.
If you now turn the wifi back on or plug the network cable, at last the two
threads that are stuck are released and the WebSocket handler gets a
notification of the session closing.
In the attachment, the first two stack traces are of (1) the thread trying to
send and (2) the thread that attempted to close. The 3rd stack trace is of
another hung thread.
NOTE that this does not occur on Tomcat 8 where the timout does occur and also
attempts to close a session do succeed.
Also I am told that the timeout does occur on Windows but I haven't verified it
myself. I am using Linux.
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]