Hello, I have a problem with keep-alive connections, when starting a subprocess (via JDK's default ProcessBuilder/Process API), while also having started Tomcat with the APR HTTP/1.1 Connector.
The problem symptom is with Keep-Alive connection, as follows: - the client (browser, jmeter, etc.) sends a first request - the servlet starts a Process for e.g. wordpad.exe - the servlet returns an acknowledgment html content, sets the content length, flushes the writer, and returns - the client displays the received acknowledgement html content, sends the second request to the server. - the server doesn't answer. No Tomcat log ever reports the start of something received. - Then when on the server you close the wordpad.exe instance, the server finally handles the second request. I have created a small servlet code which reproduces the problem. For the demo, it suffices to have the started subprocess be "wordpad.exe". Of course my real process is more interesting than that :-). You can find the servlet code for reproducing the test here: https://www.refheap.com/paste/3254 To reproduce the problem deterministically, the ConnectionTimeout for the APR HTTP Connector in servlet.xml must be set sufficiently low. With my boxes, I get a 100% error hit when set at 200 ms. You can find here the jmeter script which hits the same page again and again with "keep-alive" option set on: https://www.refheap.com/paste/3255 So far, the only reliable solution we have found to work around this problem is to not use the HTP/1.1 APR Connector. My configuration : Windows 2008 US std R2 64bits Tomcat 6.0.32 64 bits Java 6u30 64 bits(Oracle) Same issue has been observed on Windows 7 32 bits. Was not able to reproduce the issue on Linux Ubuntu Desktop 11.10 or 12.04. Thanks for your support, ideas, solutions, etc. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org