Using bitnami tomcat stack(Apache + Tomcat) under AWS. Everything was perfect until now. One of the new functionality in Webapps requires more then 2mins of waiting time to get it done. But before execution stops Apache sends HTTP-500 error. When checked the tomcat console it shows below error in same time.
» 19 May 2016 16:13:27.370 Thu May 19 16:13:27 +0530 2016, (FrameworkServlet.java:984) DEBUG: Could not complete request, ClientAbortException: java.net.SocketException: Broken pipe at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:413) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:480) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:366) at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:438) at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:426) at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:91)
While trying with multiple sample request found that HTTP-500 was received exactly after 60seconds of waiting.
Tomcat server.xml
<Connector port="8099" protocol="AJP/1.3" redirectPort="8443" connectionTimeout="300000" />
Tomcat.conf
<LocationMatch "^/(?!(phpmyadmin([^a-zA-Z0-9]|$))).*$">
ProxyPass ajp://localhost:8009 connectiontimeout=36000 timeout=36000
</LocationMatch>
Check the Timeout of linux box and found that it is 2hrs. It may Apache or Apache-Tomcat connector timeout issue. Where are these configuration in bitnami stack to change it.