Fix "can't bind to address" error reporting.

Report the actual port used for the listening attempt instead of
server.port.

Originally, Redis would just listen on server.port.
But, with clustering, Redis uses a Cluster Port too,
so we can't say server.port is always where we are listening.

If you tried to launch Redis with a too-high port number (any
port where Port+10000 > 65535), Redis would refuse to start, but
only print an error saying it can't connect to the Redis port.

This patch fixes much confusions.
This commit is contained in:
Matt Stancliff 2014-02-19 17:26:33 -05:00
parent e087d8a20d
commit b20ae393f1

View File

@ -1581,7 +1581,7 @@ int listenToPort(int port, int *fds, int *count) {
redisLog(REDIS_WARNING,
"Creating Server TCP listening socket %s:%d: %s",
server.bindaddr[j] ? server.bindaddr[j] : "*",
server.port, server.neterr);
port, server.neterr);
return REDIS_ERR;
}
(*count)++;