httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject Re: cvs commit: apache-2.0/src/main http_core.c http_protocol.c
Date Sun, 01 Oct 2000 06:44:22 GMT
On Fri, 29 Sep 2000, Tony Finch wrote:
> Tony Finch <> wrote:
> > wrote:
> Actually, I think I will upgrade this objection to a veto for two
> reasons:

I'll double that veto, but with some different comments.

> 1. It is easy to write a buffering filter without unnecessary copies
> using the setaside facility, i.e. only TRANSIENT buckets would get
> copied. What has been committed copies far too much unnecessarily,
> and fails to allow for 3rd party bucket types.

While this is true, Bill is also right.  Avoiding copying is a laudable
goal, but it is just a goal.  It should not be the end all be all of our
filtering.  There are times that copying is a good idea, and it is the
correct design.

The problem is that we need to be very careful how often we copy, and when
we decide to copy.  I think 99% of this problem can be solved by putting
some buffering in the ap_r* functions and by converting all of the current
handlers to use the buckets directly.

> 2. Including a buffering filter in the core is wrong for the reasons I
> stated in my earlier post, and therefore it gives entirely the wrong
> message to 3rd party developers. If we include something like this in
> the core then we are compromising the design, and we are encouraging
> our users to do the wrong thing.

This I will agree with.  I do not believe we really need a buffering
filter, and at the very least, we don't have enough experience to know if
we need one or not.  By including one, we give the definite impression
that a buffering filter is a must-have.


Ryan Bloom               
406 29th St.
San Francisco, CA 94131

View raw message