Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
varnish-cache
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
varnishcache
varnish-cache
Commits
2a84483f
Commit
2a84483f
authored
Mar 15, 2024
by
Dridi Boukelmoune
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
whats-new: Add upgrade notes
parent
d67bf402
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
55 additions
and
19 deletions
+55
-19
upgrading-trunk.rst
doc/sphinx/whats-new/upgrading-trunk.rst
+55
-19
No files found.
doc/sphinx/whats-new/upgrading-trunk.rst
View file @
2a84483f
**Note: This is a working document for a future release, with running
updates for changes in the development branch. For changes in the
released versions of Varnish, see:** :ref:`whats-new-index`
.. _whatsnew_upgrading_CURRENT:
.. _whatsnew_upgrading_CURRENT:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Upgrading to Varnish **$NEXT_RELEASE**
Upgrading to Varnish **$NEXT_RELEASE**
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
**XXX: how to upgrade from previous deployments to this
Logs
version. Limited to work that has to be done for an upgrade, new
====
features are listed in "Changes". Explicitly mention what does *not*
have to be changed, especially in VCL. May include, but is not limited
The optional reason field of ``BackendClose`` records changed from a
to:**
description (for example "Receive timeout") to a reason tag (for example
``RX_TIMEOUT``). This will break VSL queries based on the reason field.
Using a tag should however make queries more reliable::
# before
varnishlog -q 'BackendClose ~ "Receive timeout"'
# after
varnishlog -q 'BackendClose[4] eq RX_TIMEOUT'
Such queries would no longer break when a description is changed.
Timeouts
========
The value zero for timeouts could mean either timing out immediately, never
timing out, or not having a value and falling back to another. The semantic
changed so zero always means non-blocking, timing out either immediately after
checking whether progress is possible, or after a millisecond in parts where
this can't practically be done in a non-blocking fashion.
In order to disable a timeout, that is to say never time out, the value
``INFINITY`` is used (or tested with ``isinf()``).
In the places where a timeout setting may fall back to another value, like
VCL variables falling back to parameters, ``NAN`` is used to convey the lack
of timeout setting.
VCL
~~~
All the timeouts backed by parameters can now be unset, meaning that setting
the value zero no longer falls back to parameters.
Parameters
~~~~~~~~~~
* Elements of VCL that have been removed or are deprecated, or whose
All the timeout parameters that can be disabled are now documented with the
semantics have changed.
``timeout`` flag, meaning that they can take the special value ``never`` for
that purpose::
* -p parameters that have been removed or are deprecated, or whose
varnishadm param.set pipe_timeout never
semantics have changed.
* Changes in the CLI.
VRT
~~~
* Changes in the output or interpretation of stats or the log, including
For VMOD authors, it means that the ``vtim_dur`` type expects ``INFINITY`` to
changes affecting varnishncsa/-hist/-top
.
never time out or ``NAN`` to not set a timeout
.
* Changes that may be necessary in VTCs or in the use of varnishtest.
For VMOD authors managing backends, there is one exception where a timeout
fallback did not change from zero to ``NAN`` in ``struct vrt_backend``. The
``vtim_dur`` fields must take a negative value in order to fall back to the
respective parameters due to a limitation in how VCL is compiled.
* Changes in public APIs that may require changes in VMODs or VAPI/VUT
As a convenience, a new macro ``VRT_BACKEND_INIT()`` behaves like ``INIT_OBJ``
clients
.
but initializes timeouts to a negative value
.
*eof*
*eof*
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment