From 22425fe92abb0ec89c25ec117a75807bf5adcfb6 Mon Sep 17 00:00:00 2001 From: Roberto De Ioris Date: Sun, 2 Aug 2015 07:45:43 +0200 Subject: fixed alarm backlog --- core/master.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/core/master.c b/core/master.c index 07c0b643..df6a13bc 100644 --- a/core/master.c +++ b/core/master.c @@ -258,17 +258,18 @@ static void master_check_listen_queue() { if (uwsgi_sock->queue > backlog) { backlog = uwsgi_sock->queue; } + if (uwsgi_sock->queue > 0 && uwsgi_sock->queue >= uwsgi_sock->max_queue) { uwsgi_log_verbose("*** uWSGI listen queue of socket \"%s\" (fd: %d) full !!! (%llu/%llu) ***\n", uwsgi_sock->name, uwsgi_sock->fd, (unsigned long long) uwsgi_sock->queue, (unsigned long long) uwsgi_sock->max_queue); - } - if (uwsgi.alarm_backlog) { - char buf[1024]; - int ret = snprintf(buf, 1024, "listen queue of socket \"%s\" (fd: %d) full !!! (%llu/%llu)", uwsgi_sock->name, uwsgi_sock->fd, (unsigned long long) uwsgi_sock->queue, (unsigned long long) uwsgi_sock->max_queue); - if (ret > 0 && ret < 1024) { - struct uwsgi_string_list *usl = NULL; - uwsgi_foreach(usl, uwsgi.alarm_backlog) { - uwsgi_alarm_trigger(usl->value, buf, ret); + if (uwsgi.alarm_backlog) { + char buf[1024]; + int ret = snprintf(buf, 1024, "listen queue of socket \"%s\" (fd: %d) full !!! (%llu/%llu)", uwsgi_sock->name, uwsgi_sock->fd, (unsigned long long) uwsgi_sock->queue, (unsigned long long) uwsgi_sock->max_queue); + if (ret > 0 && ret < 1024) { + struct uwsgi_string_list *usl = NULL; + uwsgi_foreach(usl, uwsgi.alarm_backlog) { + uwsgi_alarm_trigger(usl->value, buf, ret); + } } } } -- cgit v1.2.1