Folks, Last week I filed this bug report on mod_proxy and I was hoping to get a confirmation from you if you agree that this is in fact a bug or if there may be something that I'm missing.
Essentially what I discovered is that when Apache/mod_proxy is acting as a reverse proxy in front of a website, and the remote webserver sends a FIN in order to close the connection, Apache does not send the corresponding FIN packet to fully close the connection until the next time that child process is used. I've reproduced this issue on a Ubuntu desktop and the local end of the TCP connection was left open for 3 days until I finally send another request through the proxy. This issue ended up causing me some problems when my proxy was going forward to a Brocade load balancer that was leaving these TCP sessions half open for 30 minutes. The next time a process attempted to use the same source port to go forward to the load balancer, the load balancer failed to respond to the SYN packets since it was still waiting for a FIN from the previous connection. Dropping the timeout on the load balancer to 2 minutes helped, but the Apache behavior here seems incorrect to me. Any insights into why the FINs aren't being sent? -- Greg
