]> git.kaiwu.me - nginx.git/commit
Upstream: fixed ngx_http_upstream_test_next() conditions.
authorMaxim Dounin <mdounin@mdounin.ru>
Mon, 2 Apr 2018 23:43:18 +0000 (02:43 +0300)
committerMaxim Dounin <mdounin@mdounin.ru>
Mon, 2 Apr 2018 23:43:18 +0000 (02:43 +0300)
commitd90a75b7cdc70ddb2aa1880dc09301c5f1a279ae
tree4a617005b3092c7a457fb32ac0e4a76366257c50
parentcadc8ca306e42a97c6a7b89468745d154314aa84
Upstream: fixed ngx_http_upstream_test_next() conditions.

Previously, ngx_http_upstream_test_next() used an outdated condition on
whether it will be possible to switch to a different server or not.  It
did not take into account restrictions on non-idempotent requests, requests
with non-buffered request body, and the next upstream timeout.

For such requests, switching to the next upstream server was rejected
later in ngx_http_upstream_next(), resulting in nginx own error page
being returned instead of the original upstream response.
src/http/ngx_http_upstream.c