<feed xmlns='http://www.w3.org/2005/Atom'>
<title>nginx.git/src, branch release-1.5.13</title>
<subtitle>nginx</subtitle>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/'/>
<entry>
<title>SPDY: avoid creating flush frames.</title>
<updated>2014-04-07T19:35:33+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2014-04-07T19:35:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=5cf11ab2e0e27a4289ac7a69174c90fc7306f805'/>
<id>5cf11ab2e0e27a4289ac7a69174c90fc7306f805</id>
<content type='text'>
Previously, an empty frame object was created for an output chain that contains
only sync or flush empty buffers.  But since 39d7eef2e332 every DATA frame has
the flush flag set on its last buffer, so there's no need any more in additional
flush buffers in the output queue and they can be skipped.

Note that such flush frames caused an incorrect $body_bytes_sent value.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, an empty frame object was created for an output chain that contains
only sync or flush empty buffers.  But since 39d7eef2e332 every DATA frame has
the flush flag set on its last buffer, so there's no need any more in additional
flush buffers in the output queue and they can be skipped.

Note that such flush frames caused an incorrect $body_bytes_sent value.
</pre>
</div>
</content>
</entry>
<entry>
<title>SPDY: consistently handle control frames with unknown type.</title>
<updated>2014-04-07T15:27:56+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2014-04-07T15:27:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=a547f4ac15a489be896edb353a71f2dc85af1265'/>
<id>a547f4ac15a489be896edb353a71f2dc85af1265</id>
<content type='text'>
The SPDY draft 2 specification requires that if an endpoint receives a
control frame for a type it does not recognize, it must ignore the frame.
But the 3 and 3.1 drafts don't seem to declare any behavior for such case.
Then sticking with the previous draft in this matter looks to be right.

But previously, only 8 least significant bits of the type field were
parsed while the rest of 16 bits of the field were checked against zero.
Though there are no known frame types bigger than 255, this resulted in
inconsistency in handling of such frames: they were not recognized as
valid frames at all, and the connection was closed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The SPDY draft 2 specification requires that if an endpoint receives a
control frame for a type it does not recognize, it must ignore the frame.
But the 3 and 3.1 drafts don't seem to declare any behavior for such case.
Then sticking with the previous draft in this matter looks to be right.

But previously, only 8 least significant bits of the type field were
parsed while the rest of 16 bits of the field were checked against zero.
Though there are no known frame types bigger than 255, this resulted in
inconsistency in handling of such frames: they were not recognized as
valid frames at all, and the connection was closed.
</pre>
</div>
</content>
</entry>
<entry>
<title>SPDY: refactored ngx_http_spdy_state_read_data().</title>
<updated>2014-04-07T15:27:56+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2014-04-07T15:27:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=108e4d94e4585085f3244f50905d772d089bcb70'/>
<id>108e4d94e4585085f3244f50905d772d089bcb70</id>
<content type='text'>
There's no more need in a separate indicator of frame completeness
after d74889fbf06d.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There's no more need in a separate indicator of frame completeness
after d74889fbf06d.
</pre>
</div>
</content>
</entry>
<entry>
<title>SPDY: better detect premature closing of stream.</title>
<updated>2014-04-07T15:27:56+00:00</updated>
<author>
<name>Valentin Bartenev</name>
<email>vbart@nginx.com</email>
</author>
<published>2014-04-07T15:27:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=b2cd52067348aad0f751e654ed7f42f0a29b418d'/>
<id>b2cd52067348aad0f751e654ed7f42f0a29b418d</id>
<content type='text'>
Following a24f88eff684, now the case when the FIN flag is set in SYN_STREAM
is also covered.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Following a24f88eff684, now the case when the FIN flag is set in SYN_STREAM
is also covered.
</pre>
</div>
</content>
</entry>
<entry>
<title>Win32: fixed shared ssl_session_cache (ticket #528).</title>
<updated>2014-04-07T14:55:57+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2014-04-07T14:55:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=55bef3047488310e0c8474afa5158190d8040576'/>
<id>55bef3047488310e0c8474afa5158190d8040576</id>
<content type='text'>
In a worker process shm_zone-&gt;data was set to NULL instead of a proper value
extracted from shared memory.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In a worker process shm_zone-&gt;data was set to NULL instead of a proper value
extracted from shared memory.
</pre>
</div>
</content>
</entry>
<entry>
<title>Mp4: allow end values bigger than track duration.</title>
<updated>2014-04-01T16:53:18+00:00</updated>
<author>
<name>Roman Arutyunyan</name>
<email>arut@nginx.com</email>
</author>
<published>2014-04-01T16:53:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=5147f8ee6a5fb6a7cb615e0897e736a80daef9e8'/>
<id>5147f8ee6a5fb6a7cb615e0897e736a80daef9e8</id>
<content type='text'>
If start time is within the track but end time is out of it, error
"end time is out mp4 stts samples" is generated.  However it's
better to ignore the error and output the track until its end.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If start time is within the track but end time is out of it, error
"end time is out mp4 stts samples" is generated.  However it's
better to ignore the error and output the track until its end.
</pre>
</div>
</content>
</entry>
<entry>
<title>Adjusted default value of types_hash_bucket_size (ticket #352).</title>
<updated>2014-03-31T18:47:42+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2014-03-31T18:47:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=2349a6747d48a48cebcc5227f82083c33a799517'/>
<id>2349a6747d48a48cebcc5227f82083c33a799517</id>
<content type='text'>
The ngx_cacheline_size may be too low on some platforms, resulting
in unexpected hash build problems (as no collisions are tolerated due
to low bucket_size, and max_size isn't big enough to build a hash without
collisions).  These problems aren't fatal anymore but nevertheless
need to be addressed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The ngx_cacheline_size may be too low on some platforms, resulting
in unexpected hash build problems (as no collisions are tolerated due
to low bucket_size, and max_size isn't big enough to build a hash without
collisions).  These problems aren't fatal anymore but nevertheless
need to be addressed.
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: fixed hash to actually try max_size.</title>
<updated>2014-03-31T17:40:35+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2014-03-31T17:40:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=8877284863950c2a51d5b076a781437b81cd41e1'/>
<id>8877284863950c2a51d5b076a781437b81cd41e1</id>
<content type='text'>
Previously, maximum size of a hash table built was (max_size - 1).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, maximum size of a hash table built was (max_size - 1).
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: hash now ignores bucket_size if it hits max_size limit.</title>
<updated>2014-03-31T17:40:31+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2014-03-31T17:40:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=2a620ae109cb97bd320ad367d9af2d9f7b24090c'/>
<id>2a620ae109cb97bd320ad367d9af2d9f7b24090c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: slab log_nomem flag.</title>
<updated>2014-03-31T17:38:30+00:00</updated>
<author>
<name>Maxim Dounin</name>
<email>mdounin@mdounin.ru</email>
</author>
<published>2014-03-31T17:38:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sigsegv.uk/nginx.git/commit/?id=23f66898463308fdc70ab2659273fb9804f29370'/>
<id>23f66898463308fdc70ab2659273fb9804f29370</id>
<content type='text'>
The flag allows to suppress "ngx_slab_alloc() failed: no memory" messages
from a slab allocator, e.g., if an LRU expiration is used by a consumer
and allocation failures aren't fatal.

The flag is now used in the SSL session cache code, and in the limit_req
module.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The flag allows to suppress "ngx_slab_alloc() failed: no memory" messages
from a slab allocator, e.g., if an LRU expiration is used by a consumer
and allocation failures aren't fatal.

The flag is now used in the SSL session cache code, and in the limit_req
module.
</pre>
</div>
</content>
</entry>
</feed>
