[Redis-benchmark] Use IP from CLUSTER NODE reply for first node too (#8154)

If we only has one node in cluster or before 8fdc857, we don't know myself ip, so we should use config.hostip for myself.
However, we should use the IP from the command response to update node->ip if it exists and is different from config.hostip

otherwise, when there's more than one node in cluster, if we use -h with virtual IP or DNS, benchmark doesn't show node real ip and port of myself even though it could get right IP and port by CLUSTER NODES command.
This commit is contained in:
Wang Yuan 2020-12-17 16:22:13 +08:00 committed by GitHub
parent 4f67d0b647
commit 6413e5f81a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1182,8 +1182,8 @@ static int fetchClusterConfiguration() {
}
if (myself) {
node = firstNode;
if (node->ip == NULL && ip != NULL) {
node->ip = ip;
if (ip != NULL && strcmp(node->ip, ip) != 0) {
node->ip = sdsnew(ip);
node->port = port;
}
} else {