Varnish, long lived cache and purge on change

Poul-Henning Kamp phk at
Wed Aug 19 23:04:33 CEST 2009

In message <2837.1250697086 at>, "Poul-Henning Kamp" writes:
>In message <4A8BB076.50009 at>, Rob S writes:

Just to follow up to myself after trying to hack up a solution in -trunk:

>I seem to recall that the locking is benign.

Make that "Mostly benign" :-)

>Probably the more interesting question is how aggressive you want it to
>be: if it is too militant, it will cause a lot of needless disk activity.

There was actually a far more interesting question, or rather issue:

The lurker thread does not have a HTTP request.

That means that we can not evaluate a ban test like "req.url ~ foo":
we simply don't have a req.url to compare with.

So provided you only have obj.* tests in your bans, it is possible,
for req.* tests it is a no go...

The obvious workaround is evident, store the req.* fields you need in
obscure obj.* headers (possibly stripping them in vcl_deliver).

With that caveat, give r4206 a shot if you dare...

Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.

More information about the varnish-misc mailing list