Description
TS-3640 removed the code that was otherwise always doing a half-close on the ua_session for POST transactions that had error'ed on the origin connection. It seems like this allows to preserve the keep alive client connections as well as drain any body that was still in the buffers. This piece of code is very important when there's heavy POST involved.
On a related note, I see that TS-3640 was added to fix regressions caused by TS-3584. But, TS-3584 looks questionable to me too.
We have observed heavy memory leaks with hosts crashing in less than a day after TS-3640's commit has been deployed (We are in the process of confirming that the problem is completely resolved by reverting TS-3640. The memory looks stable enough after about 12 hrs run without TS-3640, running a little longer to be safe)