Mercurial > hg > nginx
comparison src/http/ngx_http_upstream_round_robin.c @ 4914:dcb853acae97
Upstream: honor the "down" flag for a single server.
If an upstream block was defined with the only server marked as
"down", e.g.
upstream u {
server 127.0.0.1:8080 down;
}
an attempt was made to contact the server despite the "down" flag.
It is believed that immediate 502 response is better in such a
case, and it's also consistent with what is currently done in case
of multiple servers all marked as "down".
author | Ruslan Ermilov <ru@nginx.com> |
---|---|
date | Fri, 16 Nov 2012 12:18:05 +0000 |
parents | 382c523d253a |
children | a384c60d55f3 |
comparison
equal
deleted
inserted
replaced
4913:002f2c783d7c | 4914:dcb853acae97 |
---|---|
428 pc->connection = NULL; | 428 pc->connection = NULL; |
429 | 429 |
430 if (rrp->peers->single) { | 430 if (rrp->peers->single) { |
431 peer = &rrp->peers->peer[0]; | 431 peer = &rrp->peers->peer[0]; |
432 | 432 |
433 if (peer->down) { | |
434 goto failed; | |
435 } | |
436 | |
433 } else { | 437 } else { |
434 | 438 |
435 /* there are several peers */ | 439 /* there are several peers */ |
436 | 440 |
437 peer = ngx_http_upstream_get_peer(rrp); | 441 peer = ngx_http_upstream_get_peer(rrp); |