Question about Pass

Poul-Henning Kamp phk at
Thu Jul 26 10:51:28 CEST 2007

In message <46A79303.2090001 at>, James Quacinella writes:

>So when running varnishstat, what does 'Cache hits for pass' mean? Sicne
>the above says that pass mode does not enter anything in the cache, but
>it can still use the cache?

If you select "pass" in vcl_fetch(), an place-holder object will be
inserted in the cache which is maked "pass this one".

The next request to hit this object, will get a cache-hit, and then
use pass-processing.

The reason for this is that when we have a cache_miss, any
subsequent requests are "stalled" until the backend replies, so
finding out that an object shouldn't be cached all the way down
in vcl_fetch() can potentially be a bottleneck.

Inserting the "pass" object, means that the subsequent requests
of this object don't risk this pile-up.

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