You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Brad Nicholes <BN...@novell.com> on 2003/06/20 00:41:59 UTC

Cleaning up the bucket allocator in the MPM...

   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?

Brad

Brad Nicholes
Senior Software Engineer
Novell, Inc., the leading provider of Net business solutions
http://www.novell.com 

Re: Cleaning up the bucket allocator in the MPM...

Posted by Cliff Woolley <jw...@virginia.edu>.
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