]> git.kaiwu.me - nginx.git/commit
Upstream keepalive: clean read delayed flag in stored connections.
authorRoman Arutyunyan <arut@nginx.com>
Tue, 28 Nov 2017 11:00:00 +0000 (14:00 +0300)
committerRoman Arutyunyan <arut@nginx.com>
Tue, 28 Nov 2017 11:00:00 +0000 (14:00 +0300)
commite13268714fa3f57adbc7c3891db86b025d79eaf4
treef6768ded5a993c64581392c961cc5a40bc89e614
parent53e5a746bff6860607d0afced9de9854ad62c50f
Upstream keepalive: clean read delayed flag in stored connections.

If a connection with the read delayed flag set was stored in the keepalive
cache, and after picking it from the cache a read timer was set on that
connection, this timer was considered a delay timer rather than a socket read
event timer as expected.  The latter timeout is usually much longer than the
former, which caused a significant delay in request processing.

The issue manifested itself with proxy_limit_rate and upstream keepalive
enabled and exists since 973ee2276300 (1.7.7) when proxy_limit_rate was
introduced.
src/http/modules/ngx_http_upstream_keepalive_module.c