Re: Bug #1893; why's it incomplete?

From: Henrik Nordstrom <henrik_at_henriknordstrom.net>
Date: Thu, 12 Jun 2008 03:30:18 +0200

On tor, 2008-06-12 at 10:57 +1000, Benno Rice wrote:
> On 11/06/2008, at 10:24 PM, Adrian Chadd wrote:
>
> > On Wed, Jun 11, 2008, Henrik Nordstrom wrote:
> >> On ons, 2008-06-11 at 17:50 +0800, Adrian Chadd wrote:
> >>
> >>> Are there any objections to removing this patch from Squid-2.HEAD
> >>> and
> >>> documenting this discussion (and other Vary related stuff) on a
> >>> wiki page?
> >>
> >> No problem.
> >
> > Ok. I'll commit a reversal of the patch later on.
>
> If someone can provide me with an example of a request/response
> pattern that provokes the incorrect behaviour, I'll happily try and
> fix the patch up.

Problem 'a', object going from simple to Vary:ing:

First request:

GET http://www.example.com/ HTTP/1.0

First response

HTTP/1.0 200 OK
Cache-Control: max-age=3600
ETag: "a"

Second request:

GET http://www.example.com/ HTTP/1.0
Dummy: example
Cache-Control: max-age=1

Second response

HTTP/1.0 200 OK
Cache-Control: max-age=3600
ETag: "b"
Vary: Dummy

The max-age in the second request is just to simulate a time warp.. the
same is seen if waiting until the object expires.

Problem 'b' Vary index object not in memory:

First request:

GET http://www.example.com/ HTTP/1.0
Dummy: example

First response:

HTTP/1.0 200 OK
Cache-Control: max-age=3600
ETag: "b"
Vary: Dummy

Restart Squid to clear the memory cache

Second request:

GET http://www.example.com/ HTTP/1.0
Dummy: example2

Second response:

HTTP/1.0 200 OK
Cache-Control: max-age=3600
ETag: "c"
Vary: Dummy

Third request:

GET http://www.example.com/ HTTP/1.0
Dummy: example

this SHOULD be a cache-hit.

There may be more issues.

Regards
Henrik

Received on Thu Jun 12 2008 - 01:30:23 MDT

This archive was generated by hypermail 2.2.0 : Thu Jun 12 2008 - 12:00:05 MDT