~ubuntu-branches/debian/sid/varnish/sid

« back to all changes in this revision

Viewing changes to doc/changes-2.0.html

  • Committer: Bazaar Package Importer
  • Author(s): Stig Sandbeck Mathisen
  • Date: 2011-03-21 10:16:07 UTC
  • mfrom: (24.1.2 experimental)
  • Revision ID: james.westby@ubuntu.com-20110321101607-528fzl583fqanas5
Tags: 2.1.5-2
ReleaseĀ forĀ unstable

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<?xml version="1.0" encoding="utf-8"?>
2
 
<html xmlns="http://www.w3.org/1999/xhtml">
3
 
  <head>
4
 
    <title>Change log for Varnish 2.0</title>
5
 
    <link rel="stylesheet" type="text/css" href="changes.css"/>
6
 
  </head>
7
 
  <body>
8
 
    <h1>Change log for Varnish 2.0</h1>
9
 
    <h2>Changes between 1.1.2 and 2.0</h2>
10
 
    <h3>varnishd</h3>
11
 
    <ul>
12
 
      <li>
13
 
        <p>Only look for sendfile on platforms where we know how to
14
 
      use it, which is FreeBSD for now.</p>
15
 
      </li>
16
 
      <li>
17
 
        <p>Make it possible to adjust the shared memory log size and
18
 
      bump the size from 8MB to 80MB.</p>
19
 
      </li>
20
 
      <li>
21
 
        <p>Fix up the handling of request bodies to better match
22
 
      what RFC2616 mandates.  This makes PUT, DELETE, OPTIONS and
23
 
      TRACE work in addition to POST. </p>
24
 
      </li>
25
 
      <li>
26
 
        <p>Change how backends are defined, to a constant structural
27
 
      defintion style.  See
28
 
      http://varnish.projects.linpro.no/wiki/VclSyntaxChanges for the
29
 
      details.</p>
30
 
      </li>
31
 
      <li>
32
 
        <p>Add directors, which wrap backends.  Currently, there's a
33
 
        random director and a round-robin director.</p>
34
 
      </li>
35
 
      <li>
36
 
        <p>Add "grace", which is for how long and object will be
37
 
        served, even after it has expired.  To use this, both the
38
 
        object's and the request's <span class="code">grace</span> parameter need
39
 
        to be set.</p>
40
 
      </li>
41
 
      <li>
42
 
        <p>Manual pages have been updated for new VCL syntax and
43
 
      varnishd options.</p>
44
 
      </li>
45
 
      <li>
46
 
        <p>Man pages and other docs have been updated.</p>
47
 
      </li>
48
 
      <li>
49
 
        <p>The shared memory log file is now locked in memory, so it
50
 
      should not be paged out to disk.</p>
51
 
      </li>
52
 
      <li>
53
 
        <p>We now handle Vary correctly, as well as Expect.</p>
54
 
      </li>
55
 
      <li>
56
 
        <p>ESI include support is implemented.</p>
57
 
      </li>
58
 
      <li>
59
 
        <p>Make it possible to limit how much memory the malloc uses.</p>
60
 
      </li>
61
 
      <li>
62
 
        <p>Solaris is now supported.</p>
63
 
      </li>
64
 
      <li>
65
 
        <p>There is now a <span class="code">regsuball</span> function, which
66
 
      works like <span class="code">regsub</span> except it replaces all
67
 
      occurences of the regex, not just the first.</p>
68
 
      </li>
69
 
      <li>
70
 
        <p>Backend and director declarations can have
71
 
      a <span class="code">.connect_timeout</span> parameter, which tells us how
72
 
      long to wait for a successful connection.</p>
73
 
      </li>
74
 
      <li>
75
 
        <p>It is now possible to select the acceptor to use by
76
 
      changing the <span class="code">acceptor</span> parameter.</p>
77
 
      </li>
78
 
      <li>
79
 
        <p>Backends can have probes associated with them, which can
80
 
      be checked with <span class="code">req.backend.health</span> in VCL as well as
81
 
      being handled by directors which do load-balancing.</p>
82
 
      </li>
83
 
      <li>
84
 
        <p>Support larger-than-2GB files also on 32 bit hosts.
85
 
      Please note that this does not mean we can support caches
86
 
      bigger than 2GB, it just means logfiles and similar can be
87
 
      bigger.</p>
88
 
      </li>
89
 
      <li>
90
 
        <p>In some cases, we would remove the wrong header when we
91
 
      were stripping Content-Transfer-Encoding headers from a
92
 
      request.  This has been fixed.</p>
93
 
      </li>
94
 
      <li>
95
 
        <p>Backends can have a <span class="code">.max_connections</span>
96
 
      associated with them.</p>
97
 
      </li>
98
 
      <li>
99
 
        <p>On Linux, we need to set the dumpable bit on the child if
100
 
      we want core dumps.  Make sure it's set.</p>
101
 
      </li>
102
 
      <li>
103
 
        <p>Doing <span class="code">purge.hash()</span> with an empty string
104
 
      would cause us to dump core.  Fixed so we don't do that any
105
 
      more.</p>
106
 
      </li>
107
 
      <li>
108
 
        <p>We ran into a problem with glibc's malloc on Linux where
109
 
      it seemed like it failed to ever give memory back to the OS,
110
 
      causing the system to swap.  We have now switched to jemalloc
111
 
      which appears not to have this problem.</p>
112
 
      </li>
113
 
      <li>
114
 
        <p><span class="code">max_restarts</span> was never checked, so we always
115
 
      ended up running out of workspace.  Now, <span class="code">vcl_error</span>
116
 
      is called when we reach <span class="code">max_restarts</span>.</p>
117
 
      </li>
118
 
    </ul>
119
 
    <h3>varnishtest</h3>
120
 
    <ul>
121
 
      <li>
122
 
        <p><span class="code">varnishtest</span> is a tool to do correctness tests
123
 
      of varnishd.  The test suite is run by using <span class="code">make
124
 
      check</span>.</p>
125
 
      </li>
126
 
    </ul>
127
 
    <h3>varnishtop</h3>
128
 
    <ul>
129
 
      <li>
130
 
        <p>We now set the field widths dynamically based on the size
131
 
      of the terminal and the name of the longest field.</p>
132
 
      </li>
133
 
    </ul>
134
 
    <h3>varnishstat</h3>
135
 
    <ul>
136
 
      <li>
137
 
        <p><span class="code">varnishstat -1</span> now displays the uptime too.</p>
138
 
      </li>
139
 
    </ul>
140
 
    <h3>varnishncsa</h3>
141
 
    <ul>
142
 
      <li>
143
 
        <p><span class="code">varnishncsa</span> now does fflush after each
144
 
      write.  This makes <span class="code">tail -f</span> work correctly, as well
145
 
      as avoiding broken lines in the log file.</p>
146
 
      </li>
147
 
      <li>
148
 
        <p>It is possible to get <span class="code">varnishncsa</span> to output
149
 
      the <span class="code">X-Forwarded-For</span> instead of the client IP by
150
 
      passing <span class="code">-f</span> to it.</p>
151
 
      </li>
152
 
    </ul>
153
 
    <h3>Build system</h3>
154
 
    <ul>
155
 
      <li>
156
 
        <p>Various sanity checks have been added
157
 
      to <span class="code">configure</span>, it now complains about no ncurses or
158
 
      if SO_RCVTIMEO or SO_SNDTIMEO are non-functional.  It also
159
 
      aborts if there's no working acceptor mechanism </p>
160
 
      </li>
161
 
      <li>
162
 
        <p>The C compiler invocation is decided by the configure
163
 
      script and can now be overridden by passing <span class="code">VCC_CC</span>
164
 
      when running configure.</p>
165
 
      </li>
166
 
    </ul>
167
 
  </body>
168
 
</html>