sequental squid-like purge hangs.

Audun Ytterdal audun at ytterdal.net
Tue Aug 23 22:57:21 CEST 2011


I have this in my cache that worked perfectly in Varnish 2.1

sub vcl_hit {
        if (req.request == "PURGE") {
                set obj.ttl = 0s;
                error 200 "Purged.";
        }
}

sub vcl_miss {
        if (req.request == "PURGE") {
                error 404 "Not in cache.";
        }
}

But after upgraded to 3.0 i see something very strange when purging
the same url several times..


for i in `seq 1 10`;do time echo -e "PURGE /
HTTP/1.0\r\nHost:www.vg.no\r\n\r\n" |nc -w 80 quinn.int.vgnett.no 80 |
head -1;done
HTTP/1.1 200 Purged.

real	0m0.005s
user	0m0.002s
sys	0m0.001s
HTTP/1.1 404 Not in cache.

real	0m0.005s
user	0m0.000s
sys	0m0.004s

real	1m20.006s
user	0m0.000s
sys	0m0.003s
HTTP/1.1 200 Purged.

real	0m0.005s
user	0m0.001s
sys	0m0.002s
HTTP/1.1 404 Not in cache.

real	0m0.005s
user	0m0.002s
sys	0m0.001s

real	1m20.006s
user	0m0.001s
sys	0m0.002s
HTTP/1.1 200 Purged.

real	0m0.004s
user	0m0.000s
sys	0m0.002s
HTTP/1.1 404 Not in cache.

real	0m0.004s
user	0m0.001s
sys	0m0.000s

real	1m20.005s
user	0m0.002s
sys	0m0.001s
HTTP/1.1 200 Purged.

real	0m0.006s
user	0m0.003s
sys	0m0.001s

So every 3de time (or purging a already purged object) seems to hang
the connection

nc is timed out after 80 seconds. If I have no timeout it just hangs
seemingly forever.




More information about the varnish-misc mailing list