From f48b883baea116a051142f3838d879c0daa42792 Mon Sep 17 00:00:00 2001 From: Dmitry Simonenko Date: Tue, 20 Jun 2017 13:40:02 +0300 Subject: [PATCH] odissey: handle accept() EADDRINUSE error --- src/od_pooler.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/od_pooler.c b/src/od_pooler.c index 533893b0..2ead2b47 100644 --- a/src/od_pooler.c +++ b/src/od_pooler.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include @@ -88,6 +89,9 @@ od_pooler_server(void *arg) if (rc == -1) { od_error(&instance->log, "server", "accept failed: %s", machine_error(server_io)); + int errno_ = machine_errno(); + if (errno_ == EADDRINUSE) + break; continue; }