r2326 - branches/1.1
des at projects.linpro.no
des at projects.linpro.no
Thu Dec 20 15:04:31 CET 2007
Author: des
Date: 2007-12-20 15:04:31 +0100 (Thu, 20 Dec 2007)
New Revision: 2326
Modified:
branches/1.1/ChangeLog
Log:
regen
Modified: branches/1.1/ChangeLog
===================================================================
--- branches/1.1/ChangeLog 2007-12-20 13:57:44 UTC (rev 2325)
+++ branches/1.1/ChangeLog 2007-12-20 14:04:31 UTC (rev 2326)
@@ -1,77 +1,84 @@
-Change log for Varnish 1.1.1
+Change log for Varnish 1.1.2
-Changes between 1.1 and 1.1.1
+Changes between 1.1.1 and 1.1.2
varnishd
- • The code required to allow VCL to read obj.status, which had accidentally
- been left out, has now been added.
+ • When switching to a new VCL configuration, a race condition exists which
+ may cause Varnish to reference a backend which no longer exists (see ticket
+ #144). This race condition has not been entirely eliminated, but it should
+ occur less frequently.
- • Varnish will now always include a Connection: header in its reply to the
- client, to avoid possible misunderstandings.
+ • When dropping a TCP session before any requests were processed, an
+ assertion would be triggered due to an uninitialized timestamp (see ticket
+ #132). The timestamp is now correctly initialized.
- • A bug that triggered an assertion failure when generating synthetic error
- documents has been corrected.
+ • Varnish will now correctly generate a Date: header for every response
+ instead of copying the one it got from the backend (see ticket #157).
- • A new VCL function, purge_url, provides the same functionality as the
- url.purge management command.
+ • Comparisons in VCL which involve a non-existent string (usually a header
+ which is not present in the request or object being processed) would cause
+ a NULL pointer dereference; now the comparison will simply fail.
- • Previously, Varnish assumed that the response body should be sent only if
- the request method was GET. This was a problem for custom request methods
- (such as PURGE), so the logic has been changed to always send the response
- body except in the specific case of a HEAD request.
+ • A bug in the VCL compiler which would cause a double-free when processing
+ include directives has been fixed.
- • Changes to run-time parameters are now correctly propagated to the child
- process.
+ • A resource leak in the worker thread management code has been fixed.
- • Due to the way run-time parameters are initialized at startup, varnishd
- previously required the nobody user and the nogroup group to exist even if
- a different user and group were specified on the command line. This has
- been corrected.
+ • When connecting to a backend, Varnish will usually get the address from a
+ cache. When the cache is refreshed, existing connections may end up with a
+ reference to an address structure which no longer exists, resulting in a
+ crash. This race condition has been somewhat mitigated, but not entirely
+ eliminated (see ticket #144.)
- • Under certain conditions, the VCL compiler would carry on after a syntax
- error instead of exiting after reporting the error. This has been
- corrected.
+ • Varnish will now pass the correct protocol version in pipe mode: the
+ backend will get what the client sent, and vice versa.
- • The manner in which the hash string is assembled has been modified to
- reduce memory usage and memory-to-memory copying.
+ • The core of the pipe mode code has been rewritten to increase robustness
+ and eliminate spurious error messages when either end closes the connection
+ in a manner Varnish did not anticipate.
- • Before calling vcl_miss, Varnish assembles a tentative request object for
- the backend request which will usually follow. This object would be leaked
- if vcl_miss returned anything else than fetch. This has been corrected.
+ • A memory leak in the backend code has been plugged.
- • The code necessary to handle an error return from vcl_fetch and vcl_deliver
- had inadvertantly been left out. This has been corrected.
+ • When using the kqueue acceptor, if a client shuts down the request side of
+ the connection (as many clients do after sending their final request), it
+ was possible for the acceptor code to receive the EOF event and recycle the
+ session while the last request was still being serviced, resulting in a
+ assertion failure and a crash when the worker thread later tried to delete
+ the session. This should no longer happen (see ticket #162.)
- • Varnish no longer prints a spurious "child died" message (the result of
- reaping the compiler process) after compiling a new VCL configuration.
+ • A mismatch between the recorded length of a cached object and the amount of
+ data actually present in cache for that object can occasionally occur (see
+ ticket #167.) This has been partially fixed, but may still occur for error
+ pages generated by Varnish when a problem arises while retrieving an object
+ from the backend.
- • Under some circumstances, due to an error in the workspace management code,
- Varnish would lose the "tail" of a request, i.e. the part of the request
- that has been received from the client but not yet processed. The most
- obvious symptom of this was that POST requests would work with some
- browsers but not others, depending on details of the browser's HTTP
- implementation. This has been corrected.
+varnishhist
- • On some platforms, due to incorrect assumptions in the CLI code, the
- management process would crash while processing commands received over the
- management port. This has been corrected.
+ • Pressing 0 though 9 while varnishhist is running will change the refresh
+ interval to the corresponding power of two, in seconds.
-Build system
+varnishncsa
- • The top-level Makefile will now honor $DESTDIR when creating the state
- directory.
+ • The varnishncsa tool can now daemonize and write a PID file like
+ varnishlog, using the same command-line options. It will also reopen its
+ output upon receipt of a SIGHUP if invoked with -w.
- • The Debian and RedHat packages are now split into three (main / lib /
- devel) as is customary.
+varnishstat
- • A number of compile-time and run-time portability issues have been
- addressed.
+ • Pressing 0 though 9 while varnishstat is running will change the refresh
+ interval to the corresponding power of two, in seconds.
- • The autogen.sh script had workarounds for problems with the GNU autotools
- on FreeBSD; these are no longer needed and have been removed.
+Build system
- • The libcompat library has been renamed to libvarnishcompat and is now
- dynamic rather than static. This simplifies the build process and resolves
- an issue with the Mac OS X linker.
+ • Varnish's <queue.h> has been modified to avoid conflicts with <sys/queue.h>
+ on platforms where the latter is included indirectly through system
+ headers.
+ • Several steps have been taken towards Solaris support, but this is not yet
+ complete.
+
+ • When configure was run without an explicit prefix, Varnish's idea of the
+ default state directory would be garbage and a state directory would have
+ to be specified manually with -n. This has been corrected.
+
More information about the varnish-commit
mailing list