Re: [squid-users] purging variants

From: Henrik Nordstrom <henrik@dont-contact.us>
Date: Sat, 18 Mar 2006 16:18:34 +0100

lör 2006-03-18 klockan 08:41 -0500 skrev lawrence wang:
> I see. But maybe I've phrased this wrong... It seems like when the
> purge tool runs, it does find all the different variants for a given
> URL and runs requests against each of them; of course the variants
> which require specific headers return 404's when those are not found
> in the request. Perhaps there's a way to relax this check without
> breaking anything else?

The PURGE tool must send the correct headers, or Squid won't know what
to do. It's not a check, it's how things work. Squid-2.5 does not know
what variants there is for a given URL, no more than it knows what URLs
there is in the cache. All it knows to do is "OK, I now have these
request headers and URL given to me from the client, is there a matching
object". Without the headers it can not find or know the variant.
Without the headers all Squid-2.5 find is that the object varies, but
have no means of finding the variants. Note of warning: If you PURGE
without the variant headers then Squid-2.5 forgets that the object
varies and the remaining cached variants of the object can not be
reached until Squid has again learned that the object varies by seeing a
Vary header response from the server. This means that if you purge
without the headers then there is no longer any way to purge the
variants without first making a request (which will be a cache miss) for
the URL.

The PURGE tool could be modified to do this I suppose. Only needs to be
taught the vary algorithm used by 2.5 and decode this into suitable
request headers as part of the purge request sent to Squid. The required
information for reconstructing the required headers is found in a meta
TLV header of the object and is read by the purge tool. Only that it
does not know the meaning of this information and consequently does not
make use of it today.

Regards
Henrik

Received on Sat Mar 18 2006 - 09:32:55 MST

This archive was generated by hypermail pre-2.1.9 : Sat Apr 01 2006 - 12:00:04 MST