From: Maxim Dounin Date: Mon, 2 Jul 2018 16:02:31 +0000 (+0300) Subject: Upstream: fixed unexpected tcp_nopush usage on peer connections. X-Git-Tag: release-1.15.1~2 X-Git-Url: http://www.kaiwu.me/postgresql/commit/?a=commitdiff_plain;h=1331a99f5c55cb1aff399000af56b17a43552e3f;p=nginx.git Upstream: fixed unexpected tcp_nopush usage on peer connections. Now tcp_nopush on peer connections is disabled if it is disabled on the client connection, similar to how we handle c->sendfile. Previously, tcp_nopush was always used on upstream connections, regardless of the "tcp_nopush" directive. --- diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c index 47cc6cc55..688acd806 100644 --- a/src/http/ngx_http_upstream.c +++ b/src/http/ngx_http_upstream.c @@ -1556,6 +1556,10 @@ ngx_http_upstream_connect(ngx_http_request_t *r, ngx_http_upstream_t *u) c->sendfile &= r->connection->sendfile; u->output.sendfile = c->sendfile; + if (r->connection->tcp_nopush == NGX_TCP_NOPUSH_DISABLED) { + c->tcp_nopush = NGX_TCP_NOPUSH_DISABLED; + } + if (c->pool == NULL) { /* we need separate pool here to be able to cache SSL connections */