[nginx] Resolver: fixed possible premature stop of the resend timer.

Dmitry Volyntsev xeioex at nginx.com
Fri Dec 16 15:22:12 UTC 2016


details:   http://hg.nginx.org/nginx/rev/9abba5b70ea0
branches:  
changeset: 6845:9abba5b70ea0
user:      Dmitry Volyntsev <xeioex at nginx.com>
date:      Fri Dec 16 18:21:42 2016 +0300
description:
Resolver: fixed possible premature stop of the resend timer.

Previously, ngx_resolve_name_done() and ngx_resolve_addr_done()
may have stopped the resend timer prematurely while srv_resend_queue
was not empty.

diffstat:

 src/core/ngx_resolver.c |  1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diffs (11 lines):

diff -r 259e2a76e8fb -r 9abba5b70ea0 src/core/ngx_resolver.c
--- a/src/core/ngx_resolver.c	Fri Dec 16 14:53:28 2016 +0300
+++ b/src/core/ngx_resolver.c	Fri Dec 16 18:21:42 2016 +0300
@@ -1556,6 +1556,7 @@ static ngx_uint_t
 ngx_resolver_resend_empty(ngx_resolver_t *r)
 {
     return ngx_queue_empty(&r->name_resend_queue)
+           && ngx_queue_empty(&r->srv_resend_queue)
 #if (NGX_HAVE_INET6)
            && ngx_queue_empty(&r->addr6_resend_queue)
 #endif


More information about the nginx-devel mailing list