comparison src/http/ngx_http_upstream_round_robin.c @ 336:1c519aff5c0c NGINX_0_6_12

nginx 0.6.12 *) Change: mail proxy was split on three modules: pop3, imap and smtp. *) Feature: the --without-mail_pop3_module, --without-mail_imap_module, and --without-mail_smtp_module configuration parameters. *) Feature: the "smtp_greeting_delay" and "smtp_client_buffer" directives of the ngx_mail_smtp_module. *) Bugfix: the trailing wildcards did not work; bug appeared in 0.6.9. *) Bugfix: nginx could not start on Solaris if the shared PCRE library located in non-standard place was used. *) Bugfix: the "proxy_hide_header" and "fastcgi_hide_header" directives did not hide response header lines whose name was longer than 32 characters. Thanks to Manlio Perillo.
author Igor Sysoev <http://sysoev.ru>
date Fri, 21 Sep 2007 00:00:00 +0400
parents 3f511163d908
children 10cc350ed8a1
comparison
equal deleted inserted replaced
335:9a32ae248b7a 336:1c519aff5c0c
134 /* an upstream implicitly defined by proxy_pass, etc. */ 134 /* an upstream implicitly defined by proxy_pass, etc. */
135 135
136 if (us->port == 0 && us->default_port == 0) { 136 if (us->port == 0 && us->default_port == 0) {
137 ngx_log_error(NGX_LOG_EMERG, cf->log, 0, 137 ngx_log_error(NGX_LOG_EMERG, cf->log, 0,
138 "no port in upstream \"%V\" in %s:%ui", 138 "no port in upstream \"%V\" in %s:%ui",
139 &us->host, us->file_name.data, us->line); 139 &us->host, us->file_name, us->line);
140 return NGX_ERROR; 140 return NGX_ERROR;
141 } 141 }
142 142
143 ngx_memzero(&u, sizeof(ngx_url_t)); 143 ngx_memzero(&u, sizeof(ngx_url_t));
144 144
147 147
148 if (ngx_inet_resolve_host(cf, &u) != NGX_OK) { 148 if (ngx_inet_resolve_host(cf, &u) != NGX_OK) {
149 if (u.err) { 149 if (u.err) {
150 ngx_log_error(NGX_LOG_EMERG, cf->log, 0, 150 ngx_log_error(NGX_LOG_EMERG, cf->log, 0,
151 "%s in upstream \"%V\" in %s:%ui", 151 "%s in upstream \"%V\" in %s:%ui",
152 u.err, &us->host, us->file_name.data, us->line); 152 u.err, &us->host, us->file_name, us->line);
153 } 153 }
154 154
155 return NGX_ERROR; 155 return NGX_ERROR;
156 } 156 }
157 157
496 if (peer[i].current_weight <= 0) { 496 if (peer[i].current_weight <= 0) {
497 continue; 497 continue;
498 } 498 }
499 499
500 if (peer[n].current_weight * 1000 / peer[i].current_weight 500 if (peer[n].current_weight * 1000 / peer[i].current_weight
501 >= peer[n].weight * 1000 / peer[i].weight) 501 > peer[n].weight * 1000 / peer[i].weight)
502 { 502 {
503 return n; 503 return n;
504 } 504 }
505 505
506 n = i; 506 n = i;