mirror of https://github.com/yandex/odyssey.git
odissey: handle accept() EADDRINUSE error
This commit is contained in:
parent
1ec7527ea4
commit
f48b883bae
|
@ -12,6 +12,7 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
#include <errno.h>
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
|
|
||||||
#include <machinarium.h>
|
#include <machinarium.h>
|
||||||
|
@ -88,6 +89,9 @@ od_pooler_server(void *arg)
|
||||||
if (rc == -1) {
|
if (rc == -1) {
|
||||||
od_error(&instance->log, "server", "accept failed: %s",
|
od_error(&instance->log, "server", "accept failed: %s",
|
||||||
machine_error(server_io));
|
machine_error(server_io));
|
||||||
|
int errno_ = machine_errno();
|
||||||
|
if (errno_ == EADDRINUSE)
|
||||||
|
break;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue