On Mon, Apr 16, 2001 at 09:16:53PM -0000, [EMAIL PROTECTED] wrote:
> rbb 01/04/16 14:16:53
>
> Modified: . CHANGES
> modules/http http_protocol.c
> Log:
> If a higher-level filter handles the the byterange aspects of a
> request, then the byterange filter should not try to redo the
> work. The most common case of this happening, is a byterange
> request going through the proxy, and the origin server handles
> the byterange request. The proxy should ignore it.
Actually, I just realized the mod_dav may also want to generate byteranges
(as it does today), rather than let the byterange filter do it.
"Why?" you may ask :-)
Consider the case where mod_dav fetches the content out of a database. We
don't want to fetch a full gigabyte, only to then have the byterange filter
trim out 10 bytes and send them to the client.
That said: with some redesign of the mod_dav backend APIs, I can create a
custom bucket that represents a mod_dav resource. Based on the byterange
filter's splits, copies, etc, followed by the final read, I should be able
to completely avoid reading in the whole gigabyte, yet still defer to the
byterange filter for processing.
(this would also handle the case of fetching a PHP script from a database,
processing it through the PHP filter, *then* yanking 10 bytes from the PHP
output)
Cheers,
-g
--
Greg Stein, http://www.lyra.org/