Hi Shawn, thanks for this awesome write-up and for the excellent use of Indiana Jones references! We too believe that the life of a web app can be quite adventurous. Perilous even when thinking about all the dangers that might lay ahead of its path in the wake of infinite loops and other unintended programming errors. In this sense, we too believe there is an opportunity for Passenger Enterprise to be an even better sidekick for your web app in these scenarios. The Robin to your Batman if you will, or in this case, the Short Round to your Indy. With a combo like that, edge cases and erroneous code should think twice about wasting precious server resources, lest it wants to join the dead pool. ;)
As for this particular issue, we have taken note of this and would love to address this within Passenger Enterprise in the not too distant future. The reason why we haven’t done so just yet is because there are a myriad of edge cases that need to be taken into account when trying to address this issue universally. These edge cases make it make it a non-trivial undertaking to guarantee internal consistent state, and as such, requires a bit more time and thinking on our end. The workaround you suggested sounds like your best shot for the time being indeed. Thanks again!
— Hongli Lai, CTO at Phusion