Sander Striker wrote:
However, my question, and point, can't we do without destroying all the subreqs individualy and just destroy the request?
No can do... it's very easy to come up with a request that causes many thousands of subrequests to be made (think mod_autoindex on a big directory). If you don't clean up each subrequest after it happens, you get a big ole' resource leak for the duration of the main request.
Ok, that makes sense. And there is probably no way of telling when the request is over? I mean, if you look at the sequence of events we reach a point where apr_pool_destroy is called on the entire list of sub requests and right after that the request is destroyed. It isn't obvious when that is, is it?
The pattern in your graphs (lots of subpool destructions in a row) was strange. It looks like a lot of subrequests didn't get destroyed until the parent request was about to go out of scope. This looks like a bug. What type of request was it? (Directory index, maybe?)
--Brian
