Sounds good. I will look forward to trying out the bucket_max_free() stuff as soon as you get it committed. The memory growth is the main issue here. We have seen a problem with this especially when reading piped data from a CGI.
Brad Brad Nicholes Senior Software Engineer Novell, Inc., the leading provider of Net business solutions http://www.novell.com >>> [EMAIL PROTECTED] Thursday, June 19, 2003 8:30:39 PM >>> On Thu, 19 Jun 2003, Brad Nicholes wrote: > After taking a look at how the different MPMs are implemented, it > appears that almost all of the MPMs create a bucket allocator and a > transaction pool for each worker thread or process. The transaction > pool is cleared after each request but the bucket allocator is not > cleared or cleaned up until the worker thread or process goes away. Is > there a reason why the bucket allocator is never cleaned up? Yes. Allocating memory for the bucket allocator takes time. The goal here is that we should reach after just a connection or two a steady-state of memory usage, with additional allocations (via malloc() I mean) being very infrequent. That said, there is a problem: the bucket_max_free() stuff /still/ isn't committed. Why not? Because I keep forgetting about it. I'm sure Jean-Jacques would cheer if I'd get around to it. :) It's on my schedule for the weekend. Once that's done, then the fact that the same bucket allocator is used will continue to be the benefit that it is without causing the potential problems of potential memory growth over time to which I believe you're alluding. Sound about right? --Cliff
