Varnish Enterprise

Upgrading to 6.0

When you have installed Varnish Enterprise 6.0, most probably you can simply start varnish with your old configuration files.

This page is a guide to you when you start to upgrade to 6.0. It is not a not a list of new features of VCL, but a minimal set of changes that is needed to achieve equivalent operation on 6.0.

This list might not be complete. If you run into problems with using your existing configuration with 6.0, contact support. We will help you to get going, and update this list accordingly.

Updates to your VCL

In 6.0,

  • All VCL Objects should now be defined before used. The compiler will generate an error if objects are defined before use.

  • VCL names are restricted to alphanumeric characters, dashes and underscores. In addition, the first character should be alphabetic. That is, the name should match “[A-Za-z][A-Za-z0-9_-]*”.

  • In sub vcl_recv, the rollback function has been retired.

  • In sub vcl_hit, replace return (fetch) with return (miss). Failing to do this will give you many error log lines in the shared memory log.

  • The variable req.ttl is deprecated.

  • The VMOD softpurge has been retired. The functionality is covered by the new purge VMOD.

  • kvstore is now object oriented. Please see the kvstore 6.0 API doc page.

Note that there are many improvements to VCL in Varnish 6.0, but these are not covered here.