Mercurial > hg > nginx
comparison src/http/ngx_http_upstream_round_robin.c @ 5162:ee9a043765ea stable-1.2
Merge of r5133, r5134: peer.free() and peer.get() balance.
*) Upstream: only call peer.free() if peer.get() selected a peer.
*) Upstream: removed double-free workarounds in peer.free() methods.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Fri, 29 Mar 2013 18:16:27 +0000 |
parents | ac3690ee6c28 |
children |
comparison
equal
deleted
inserted
replaced
5161:a5f7d455e271 | 5162:ee9a043765ea |
---|---|
582 ngx_http_upstream_rr_peer_t *peer; | 582 ngx_http_upstream_rr_peer_t *peer; |
583 | 583 |
584 ngx_log_debug2(NGX_LOG_DEBUG_HTTP, pc->log, 0, | 584 ngx_log_debug2(NGX_LOG_DEBUG_HTTP, pc->log, 0, |
585 "free rr peer %ui %ui", pc->tries, state); | 585 "free rr peer %ui %ui", pc->tries, state); |
586 | 586 |
587 if (state == 0 && pc->tries == 0) { | |
588 return; | |
589 } | |
590 | |
591 /* TODO: NGX_PEER_KEEPALIVE */ | 587 /* TODO: NGX_PEER_KEEPALIVE */ |
592 | 588 |
593 if (rrp->peers->single) { | 589 if (rrp->peers->single) { |
594 pc->tries = 0; | 590 pc->tries = 0; |
595 return; | 591 return; |