A deadlock is possible in http-/0.0.0.0:8080-1": at org.apache.tomcat.websocket.server.WsRemoteEndpointImplServer.onWritePossible(WsRemoteEndpointImplServer.java:93) - waiting to lock <0x00000006dee6a1a8> (a java.nio.HeapByteBuffer) - locked <0x00000006dee6a200> (a java.lang.Object) at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler$WsWriteListener.onWritePossible(WsHttpUpgradeHandler.java:243) at org.apache.catalina.core.StandardWrapperValve.async(StandardWrapperValve.java:605) at org.apache.catalina.core.StandardWrapperValve.event(StandardWrapperValve.java:350) at org.apache.catalina.core.StandardContextValve.event(StandardContextValve.java:171) at org.apache.catalina.valves.ValveBase.event(ValveBase.java:185) at org.apache.catalina.core.StandardHostValve.event(StandardHostValve.java:252) at org.apache.catalina.valves.ValveBase.event(ValveBase.java:185) at org.apache.catalina.core.StandardEngineValve.event(StandardEngineValve.java:121) at org.apache.catalina.connector.CoyoteAdapter.event(CoyoteAdapter.java:228) at org.apache.coyote.http11.Http11NioProcessor.event(Http11NioProcessor.java:232) at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.event(Http11NioProtocol.java:818) at org.apache.tomcat.util.net.NioEndpoint$ChannelProcessor.run(NioEndpoint.java:939) - locked <0x00000006deeeb9c0> (a java.lang.Object) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.net.NioEndpoint$DefaultThreadFactory$1$1.run(NioEndpoint.java:1249) at java.lang.Thread.run(Thread.java:745) "EJB default - 1": at org.apache.tomcat.websocket.server.WsRemoteEndpointImplServer.onWritePossible(WsRemoteEndpointImplServer.java:81) - waiting to lock <0x00000006dee6a200> (a java.lang.Object) at org.apache.tomcat.websocket.server.WsRemoteEndpointImplServer.doWrite(WsRemoteEndpointImplServer.java:76) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.writeMessagePart(WsRemoteEndpointImplBase.java:444) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.startMessage(WsRemoteEndpointImplBase.java:334) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase$TextMessageSendHandler.write(WsRemoteEndpointImplBase.java:741) - locked <0x00000006dee6a1a8> (a java.nio.HeapByteBuffer) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendPartialString(WsRemoteEndpointImplBase.java:239) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendString(WsRemoteEndpointImplBase.java:182) at org.apache.tomcat.websocket.WsRemoteEndpointBasic.sendText(WsRemoteEndpointBasic.java:37)
Created attachment 1115274 [details] BZ1299058.zip
Created attachment 1115277 [details] BZ1299058.zip
Verified on EAP 6.4.7.CP.CR2 We don't have reproducer for this deadlock, but customer confirmed that patch fixed their reproducer. The patch is included and no regression was found, marking as verified. More information in bz1299058.
Retroactively bulk-closing issues from released EAP 6.4 cumulative patches.