On Sun, Sep 23, 2001 at 09:27:58PM -0700, Ryan Bloom wrote:
> On Sunday 23 September 2001 09:21 pm, Greg Stein wrote:
>...
> > There is a create_request hook which inserts the HTTP_IN filter when the
> > request is created.
> >
> > This seems like a good idea: each instantiation of the HTTP_IN filter is
> > for *one* request and one request only. We can be much more sure that state
> > is not spanning requests.
> 
> No, this is a bad idea, and I still don't see how it works for pipelined requests.
> The problem is that it is impossible to make sure that you only read a specific
> amount from the socket.

Whoops. Hell ya... you're so right.

All right. Until CORE_IN can return only a specified amount, the new,
combined filter should remain a connection filter. The associated
per-request logic in this patch should go away. The code will put the socket
bucket (and other unread/unused data) into the filter's context, which will
survive until the next request.

Justin... want to try a third pass? :-)

btw, does the test suite actually try out persistent connections? There was
a problem with persistent connections for a good long while, until I fixed
it last week.

(while I like the flatten function, maybe we can leave that out of this
 patch for now; shoot for that one at another time, and replace similar uses
 across the board (rather than one spot))

In some future pass, we can reinstate the per-request behavior, but that is
a discussion for another time...

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/

Reply via email to