--On Monday, June 6, 2005 4:01 PM +0200 Sander Striker <[EMAIL PROTECTED]> wrote:

So this is the same problem reported here:
http://mail-archives.apache.org/mod_mbox/httpd-dev/200505.mbox/%3c428F94
[EMAIL PROTECTED]

which Sander said he was working on.  Any progress?  The cache is kind
of useless at the moment, dogfood-wise.

In short, with details left out:  The problem was that the 304 was not
propagated down into the filterstack; leaving the CACHE_SAVE filter no
chance to morph the 304 into a full response in case the client did a
non-conditional request.

This problem was solved, but apparently we have regressed.

So, I had a chance to look at it. It's the same problem but in a different module. cgi_handler never sends an EOS down the filter chain when it gets a 304 (anything non-200). The problem above was that mod_proxy wouldn't send an EOS either in this same case.

We really need a way to generically solve this problem to ensure that an EOS is always sent for every request when the request's filter chains are still active.

The short-term solution is to get cgi_handler to send the EOS in cgi_handler (circa line 924 in the log_script path); but there really has to be a better way. For now, I'll commit a fix that matches what we did with mod_proxy; but this pattern keeps emerging. -- justin

Reply via email to