apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Cliff Woolley <jwool...@virginia.edu>
Subject Re: [PATCH] Update to Brian's patch to allocate brigades out of the bucket allocator
Date Sat, 21 Dec 2002 06:03:22 GMT
On Fri, 20 Dec 2002 rbb@apache.org wrote:

> apr_brigade_create(bb, ...);
> fill_brigade_with_data(bb, ...);
> ap_pass_brigade(bb, ...)
>
> ap_clean_brigade(bb, ...);
> fill_brigade_with_more_data(bb, ...);
> ap_pass_brigade(bb, ...);
>
> This is perfectly legal for a handler to do.

No it isn't, because if ap_pass_brigade() makes it all the way down to the
core_output_filter, then after ap_pass_brigade_() returns, bb will have
been destroyed by the core_output_filter.  I'm not necessarily saying
that's *right*, just that that's the case today.

I still can't decide whom to agree with in this debate.  I'll have to
ponder it overnight before I throw in my opinion.  One thing is certain...
the current level of segfaultyness and memory leakage is bad news for
httpd 2.0.44.  Note that there are quite a few places in the httpd (last I
checked) where we abandon bucket brigades because it's always been the
case that they were cleaned up for us.  The fact that that's changing
doesn't sit well with me, because it makes me nervous about the stability
of the next httpd 2.0 release.  Can we at least agree to do one thing:
release 2.0.44 *without* Brian's change.  Then we can sort out the best
course of action without delaying the entire release process on the stable
branch.  It might well be that the best course of action is to just fix
the places in httpd that abuse brigades.  But as Bill pointed out, what
about third party modules?  Ay caramba.

+1 to moving brigades back into httpd, fwiw.

Thanks,
Cliff


Mime
View raw message