connectionTimeout is not timing out long client write times in JBossWeb
Issue
-
Thread dumps show threads stalling for some time in socket writes to clients in JBossWeb, for example:
"127.0.0.1-8080-1" daemon prio=10 tid=0x0000000057503800 nid=0x7b37 runnable [0x00000000456fa000] java.lang.Thread.State: RUNNABLE at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(Unknown Source) at java.net.SocketOutputStream.write(Unknown Source) at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:724) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:449) at org.apache.coyote.http11.InternalOutputBuffer.flush(InternalOutputBuffer.java:299) at org.apache.coyote.http11.Http11Processor.action(Http11Processor.java:950) at org.apache.coyote.Response.action(Response.java:186) at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:345) at org.apache.catalina.connector.OutputBuffer.flush(OutputBuffer.java:314) at org.apache.catalina.connector.CoyoteOutputStream.flush(CoyoteOutputStream.java:98) -
This Socket write state appears to last much longer than our connector's configured
connectionTimeout. Why is the connectionTimeout not limiting the length of these socket writes?
Environment
- JBoss Enterprise Application Platform (EAP)
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.