Updating from 2.0.5 to 3.0.0 - some questions

Jim Hayter jim.hayter at gmail.com
Fri Feb 17 18:37:03 CET 2012

I am working on upgrading from Varnish 2.0.5 running on Ubuntu 9.10 to
Varnish 3.0.0 running on Ubuntu 11.10.

I have a few questions based on my reading of

1) Changes from 2.1.5 to 3.0 beta 1 states:

   - The -l (shared memory log file) argument has been changed, please
see the varnishd manual for the new syntax.
     'man varnishd' for 2.0.5 states:

     -l shmlogsize
                 Specify size of shmlog file.  Scaling suffixes like 'k', 'm'
                 can be used up to (e)tabytes.  Default is 80 Megabytes.
                 Specifying less than 8 Megabytes is unwise.

    'man varnishd' for 3.0.0 states the same thing.  And it appears to
be working.  What changed?

2) I'm also a bit confused by this code in vcl_fetch:

    if (beresp.ttl <= 0s ||
        beresp.http.Set-Cookie ||
        beresp.http.Vary == "*") {
         * Mark as "Hit-For-Pass" for the next 2 minutes
        set beresp.ttl = 120 s;
        return (hit_for_pass);

    What is the purpose of "set beresp.ttl = 120 s;" ?  So, the
purpose is to mark as "Hit-For-Pass" for 2 minutes, but why is this
done (what does it accomplish)?

3) I've noted that a number of the parameter values I used to set have
become defaults.  I also noted the change to make thread_pool_min and
thread_pool_max agree better.  Aside from these and some other changes
(purge to ban, obj to beresp), are there particular changes I should
look at closely to avoid problems when I update?

4) Is there additional doc I should review (besides
https://www.varnish-cache.org/trac/browser/doc/changes.rst) that would
help me avoid problems and understand what has changed?

Thanks for any suggestions.


More information about the varnish-misc mailing list