This release contains several bug fixes and some new features.
6.0.9r5-1 packages released on 2022-04-28 contained a change
to the way PID-files were handled in the package-included
varnishd.service systemd service file. These changes caused upgrade
issues on some systems depending on if and how the
had local customizations. This was due to a missing
-P %t/%N/varnishd.pid command line option in the options given to
varnishd in the customized service files, causing
varnishd to not
produce the PID-file systemd was told to expect. The subsequent
6.0.9r5-2 packages released on 2022-04-29 have these service file
changes reverted back to the state prior to this release.
A new set of functions in VMOD
ykey to get statistics of objects
with specific keys. This feature is experimental, and must not be
used on user requests.
libadns and VMOD
activedns together make it easier
to manage DNS and name resolution inside of Varnish. They are
designed to be used with VMOD
udo and its new features.
udo now supports dynamic backends with sharding.
udo now has three new functions,
.self_is_next() which can be used to
implement self routing clusters.
There is a new experimental
cluster.vcl which implements self
routing clusters. Here experimental means that it has not seen
much real-world testing, and that its functionality might change
slightly in the next releases. Use at your own risk, and carefully
read change logs and new release announcements.
stat is now aware of dynamic
udo backend names in its
headerplus now has an experimental
function which can be used to make label VCLs start from a modified
set of headers and URL.
You can now insist that backend fetches starts with a fresh
connection by calling
varnishstat gauges will now display the number zero instead
of the result of an underflow. This change is mainly useful in
benchmarking scenarios with synthetic tests. A new key binding
r) and a new option (
-r) has been added to override this.
There is a new option for
There is a new function
remove_duplicate in VMOD
cookieplus.get() function has a new parameter to select
the last or first occurrence of a cookie.
The Slicer now handles range request better when MSE is involved.
Workspace allocation handling has improved in VMODs
When a client transaction ends after leaving the waiting list, some missing logs records are now recorded.
deviceatlas now handles the databases’ lifetimes in a
image memory leak when doing error handling has been
Error reporting in VMOD
mse on IO errors has improved.
See the changelog for the complete list of changes in this release.