<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src/http, branch release-1.1.5</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>Version bump.</title>
<updated>2011-10-05T13:13:25+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-10-05T13:13:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=ab0078a4c8626572282943915348daa6e0494b83'/>
<id>ab0078a4c8626572282943915348daa6e0494b83</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed cache bypass caching of non-cacheable replies (ticket #21).</title>
<updated>2011-10-05T10:14:21+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2011-10-05T10:14:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=20139ff13adddd0fdf497a086615dac95ced6e8d'/>
<id>20139ff13adddd0fdf497a086615dac95ced6e8d</id>
<content type='text'>
If cache was bypassed with proxy_cache_bypass, cache-controlling headers
(Cache-Control, Expires) wasn't considered and response was cached even
if it was actually non-cacheable.

Patch by John Ferlito.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If cache was bypassed with proxy_cache_bypass, cache-controlling headers
(Cache-Control, Expires) wasn't considered and response was cached even
if it was actually non-cacheable.

Patch by John Ferlito.
</pre>
</div>
</content>
</entry>
<entry>
<title>Added uwsgi_buffering and scgi_buffering directives.</title>
<updated>2011-09-30T11:53:27+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2011-09-30T11:53:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=3aba7688559b27374d7dfc262d5aef7bbaf6d98d'/>
<id>3aba7688559b27374d7dfc262d5aef7bbaf6d98d</id>
<content type='text'>
Patch by Peter Smit.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Patch by Peter Smit.
</pre>
</div>
</content>
</entry>
<entry>
<title>Using strtod() instead of atofp() to support a lot of digits after dot in</title>
<updated>2011-09-30T09:18:28+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-09-30T09:18:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=f3ae6a6102256421bc0739ba4816fdd17ceda106'/>
<id>f3ae6a6102256421bc0739ba4816fdd17ceda106</id>
<content type='text'>
"start" parameter value.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
"start" parameter value.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix of building on platforms with 32-bit off_t. (closed #23)</title>
<updated>2011-09-29T15:19:36+00:00</updated>
<author>
<name>Igor Sysoev</name>
<email>igor@sysoev.ru</email>
</author>
<published>2011-09-29T15:19:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=a40e7eed307d3344b45be3ca9f9f6143f1df3a96'/>
<id>a40e7eed307d3344b45be3ca9f9f6143f1df3a96</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed segmentation fault with empty config on Windows.</title>
<updated>2011-09-27T12:07:09+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2011-09-27T12:07:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=5cc90f309dad4d02a83e929b3a46e6ad895d75dc'/>
<id>5cc90f309dad4d02a83e929b3a46e6ad895d75dc</id>
<content type='text'>
See here for report:
http://mailman.nginx.org/pipermail/nginx-ru/2011-September/043288.html
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
See here for report:
http://mailman.nginx.org/pipermail/nginx-ru/2011-September/043288.html
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix for "ssl_session_cache builtin" (broken since 1.1.1, r3993).</title>
<updated>2011-09-27T12:06:07+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2011-09-27T12:06:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=554768dabbe9a9b5cc26c51c66fb20e92f4203af'/>
<id>554768dabbe9a9b5cc26c51c66fb20e92f4203af</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Better handling of late upstream creation.</title>
<updated>2011-09-27T11:18:51+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2011-09-27T11:18:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=886c6295eeaa850d479bdf4590751cfbfb32814d'/>
<id>886c6295eeaa850d479bdf4590751cfbfb32814d</id>
<content type='text'>
Configuration with duplicate upstream blocks defined after first use, i.e.
like

    server {
        ...
        location / {
            proxy_pass http://backend;
        }
    }

    upstream backend { ... }
    upstream backend { ... }

now correctly results in "duplicate upstream" error.

Additionally, upstream blocks defined after first use now handle various
server directive parameters ("weight", "max_fails", etc.).  Previously
configuration like

    server {
        ...
        location / {
            proxy_pass http://backend;
        }
    }

    upstream backend {
        server 127.0.0.1 max_fails=5;
    }

incorrectly resulted in "invalid parameter "max_fails=5"" error.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Configuration with duplicate upstream blocks defined after first use, i.e.
like

    server {
        ...
        location / {
            proxy_pass http://backend;
        }
    }

    upstream backend { ... }
    upstream backend { ... }

now correctly results in "duplicate upstream" error.

Additionally, upstream blocks defined after first use now handle various
server directive parameters ("weight", "max_fails", etc.).  Previously
configuration like

    server {
        ...
        location / {
            proxy_pass http://backend;
        }
    }

    upstream backend {
        server 127.0.0.1 max_fails=5;
    }

incorrectly resulted in "invalid parameter "max_fails=5"" error.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cache: fix for sending of stale responses.</title>
<updated>2011-09-27T11:17:11+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2011-09-27T11:17:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=b16918ed08b9f1155220a980ee6e133d31f2b61a'/>
<id>b16918ed08b9f1155220a980ee6e133d31f2b61a</id>
<content type='text'>
For normal cached responses ngx_http_cache_send() sends last buffer and then
request finalized via ngx_http_finalize_request() call, i.e. everything is
ok.

But for stale responses (i.e. when upstream died, but we have something in
cache) the same ngx_http_cache_send() sends last buffer, but then in
ngx_http_upstream_finalize_request() another last buffer is send.  This
causes duplicate final chunk to appear if chunked encoding is used (and
resulting problems with keepalive connections and so on).

Fix this by not sending in ngx_http_upstream_finalize_request()
another last buffer if we know response was from cache.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For normal cached responses ngx_http_cache_send() sends last buffer and then
request finalized via ngx_http_finalize_request() call, i.e. everything is
ok.

But for stale responses (i.e. when upstream died, but we have something in
cache) the same ngx_http_cache_send() sends last buffer, but then in
ngx_http_upstream_finalize_request() another last buffer is send.  This
causes duplicate final chunk to appear if chunked encoding is used (and
resulting problems with keepalive connections and so on).

Fix this by not sending in ngx_http_upstream_finalize_request()
another last buffer if we know response was from cache.
</pre>
</div>
</content>
</entry>
<entry>
<title>Cache: fix for sending of empty responses.</title>
<updated>2011-09-27T11:15:35+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2011-09-27T11:15:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=84c58a30e63fca6a509127fe046bd00a4b290135'/>
<id>84c58a30e63fca6a509127fe046bd00a4b290135</id>
<content type='text'>
Revert wrong fix for empty responses introduced in 0.8.31 and apply new one,
rewritten to match things done by static module as close as possible.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Revert wrong fix for empty responses introduced in 0.8.31 and apply new one,
rewritten to match things done by static module as close as possible.
</pre>
</div>
</content>
</entry>
</feed>
