Created attachment 901366 [details] jstack of EAP Description of problem: WebSocket: On server can some connection remain open consuming CPU load even though client part already finished. I am attaching thread dump of EAP server (This could be related to BZ#1100486, but I am running it with JBossWeb 7.4.4.Final which contains the fix). Version-Release number of selected component (if applicable): EAP 6.3.0.ER5 also with updated JBossWeb to 7.4.4.Final How reproducible: mostly Steps to Reproduce: 1. enable NIO2 connector (requires JAVA 1.7) 2. deploy app with some websocket endpoint (I am attaching one you can use) 3. do websocket operations resulting in the errors visible in attached logs (for me the easiest is to run autobahn testsuite) 4. check CPU load and running threads Actual results: Connections remain open with state waiting for condition (see jstack in attachment) Expected results: Connections are properly closed Additional info: when I am using APR connector instead of NIO2 it works as expected.
Created attachment 901368 [details] The server errors Server errors, you can see matching connection names between the stacktraces and thread dump.
Created attachment 901369 [details] simple websocket endpoint Simple websocket endpoint which just echos the received message plus logs websocket onError messages.
Created attachment 901370 [details] full server log with debug enabled for websockets and connectors
Note: The number of threads managing opened connections and CPU load increases after the execution finished, the client is no longer running.
Avoiding the loop seems possible (r2435), but the main problem is not fixed.
I am no longer seeing this error with EAP 6.3.0.ER7, verified.