Re: [squid-users] Caching based on accept-language

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Tue, 08 Feb 2011 23:33:45 +0000

On Tue, 8 Feb 2011 12:25:46 -0500, Jeff Gerbracht
<jeffgerbracht_at_gmail.com>
wrote:
> More info, I bumped up logging to level 9, and it appears that both
> requests are generating the same key though there is a Vary:
> Accept-Language in the request header and the Accept-Language values
> are different in the header. Assuming I'm reading the logs
> correctly.
>
> English request
> 2011/02/08 12:03:39.139| HttpMsg.cc(460) parseRequestFirstLine:
> parsing possible request: GET
>
/gbbcApps/report?cmd=showReport&reportName=StateSummary&state=US-IL&year=2005
> HTTP/1.1
> Host: 127.0.0.1:3128
> Accept-Encoding: gzip, deflate
> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
> rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 (.NET CLR 3.5.30729)
> Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
> Accept-Language: en-us,fr-ca;q=0.8,es-mx;q=0.6,en;q=0.4,es;q=0.2
> ---------------: ------------
> Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
> Referer:
>
http://gbbc.birdsource.org/gbbcApps/report?cmd=showReport&reportName=StateSummary&state=US-IL&year=2005
> Cookie: __utma=159824174.1016341557.1233610654.1263823722.1264607697.8;
> __utma=60651899.1851875726.1263486292.1297177347.1297182297.6;
> __utmc=60651899;
>
__utmz=60651899.1297177347.5.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none);
> __utmb=60651899.21.10.1297182297
> Vary: Accept-Language
> X-Forwarded-For: 132.236.164.124
> X-Forwarded-Host: gbbc.birdsource.org
> X-Forwarded-Server: gbbc.birdsource.org
> Connection: Keep-Alive
> .
> .
> .2011/02/08 12:03:39.141| storeGet: looking up
> 41D47F9900C0151C89F42C1B2CF93D9E
> 2011/02/08 12:03:39.141| clientProcessRequest2: default HIT
> 2011/02/08 12:03:39.141| StoreEntry::lock: key
> '41D47F9900C0151C89F42C1B2CF93D9E' count=1
> 2011/02/08 12:03:39.141| UFSSwapDir::reference: referencing 0x1d577bf0
> 0/385
> 2011/02/08 12:03:39.141| store_client::copy:
> 41D47F9900C0151C89F42C1B2CF93D9E, from 0, for length 4096, cb 1,
> cbdata 0x1d8dcd68
> 2011/02/08 12:03:39.141| cbdataLock: 0x1d8dcd68=1
> 2011/02/08 12:03:39.141| storeClientCopy2:
41D47F9900C0151C89F42C1B2CF93D9E
> 2011/02/08 12:03:39.141| cbdataLock: 0x1da54e88=1
> 2011/02/08 12:03:39.141| store_client::doCopy: co: 0, hi: 53985
> 2011/02/08 12:03:39.141| store_client::doCopy: Copying normal from
memory
>
>
> Request in French
> 2011/02/08 12:03:49.463| HttpMsg.cc(460) parseRequestFirstLine:
> parsing possible request: GET
>
/gbbcApps/report?cmd=showReport&reportName=StateSummary&state=US-IL&year=2005
> HTTP/1.1
> Host: 127.0.0.1:3128
> Accept-Encoding: gzip, deflate
> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
> rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 (.NET CLR 3.5.30729)
> Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
> Accept-Language: fr-ca,en-us;q=0.8,es-mx;q=0.6,en;q=0.4,es;q=0.2
> ---------------: ------------
> Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
> Referer:
>
http://gbbc.birdsource.org/gbbcApps/report?cmd=showReport&reportName=StateSummary&state=US-IL&year=2005
> Cookie: __utma=159824174.1016341557.1233610654.1263823722.1264607697.8;
> __utma=60651899.1851875726.1263486292.1297177347.1297182297.6;
> __utmc=60651899;
>
__utmz=60651899.1297177347.5.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none);
> __utmb=60651899.22.10.1297182297
> Vary: Accept-Language
> X-Forwarded-For: 132.236.164.124
> X-Forwarded-Host: gbbc.birdsource.org
> X-Forwarded-Server: gbbc.birdsource.org
> Connection: Keep-Alive
> .
> .
> .
> 2011/02/08 12:03:49.464| storeGet: looking up
> 41D47F9900C0151C89F42C1B2CF93D9E
> 2011/02/08 12:03:49.464| clientProcessRequest2: default HIT
> 2011/02/08 12:03:49.465| StoreEntry::lock: key
> '41D47F9900C0151C89F42C1B2CF93D9E' count=1
> 2011/02/08 12:03:49.465| UFSSwapDir::reference: referencing 0x1d577bf0
> 0/385
> 2011/02/08 12:03:49.465| store_client::copy:
> 41D47F9900C0151C89F42C1B2CF93D9E, from 0, for length 4096, cb 1,
> cbdata 0x1d8dcd68
> 2011/02/08 12:03:49.465| cbdataLock: 0x1d8dcd68=1
> 2011/02/08 12:03:49.465| storeClientCopy2:
41D47F9900C0151C89F42C1B2CF93D9E
> 2011/02/08 12:03:49.465| cbdataLock: 0x1da54e88=1
> 2011/02/08 12:03:49.465| store_client::doCopy: co: 0, hi: 53985
> 2011/02/08 12:03:49.465| store_client::doCopy: Copying normal from
memory
>

Your response headers appear correct for HTTP.

Strange. Looks like you are right about squid finding the same backend
object.
The actual key full-text is output at debug level 11,3 as
"httpMakeVaryMark: " to see if a reason why is available.

Also, if you can update to 3.1.11 or apply the patch
http://master.squid-cache.org/Versions/v3/3.1/changesets/squid-3.1-10220.patch
squid-3 will now add the vary headers info to the cachemgr "objects"
report when dumping the cache.

Amos
Received on Tue Feb 08 2011 - 23:33:48 MST

This archive was generated by hypermail 2.2.0 : Wed Feb 09 2011 - 12:00:02 MST