diff --git a/src/sentinel.c b/src/sentinel.c index 595a12fea..006d5141b 100644 --- a/src/sentinel.c +++ b/src/sentinel.c @@ -598,11 +598,6 @@ void releaseSentinelAddr(sentinelAddr *sa) { zfree(sa); } -/* Return non-zero if two addresses are equal. */ -int sentinelAddrIsEqual(sentinelAddr *a, sentinelAddr *b) { - return a->port == b->port && !strcasecmp(a->ip,b->ip); -} - /* Return non-zero if the two addresses are equal, either by address * or by hostname if they could not have been resolved. */ @@ -1616,7 +1611,7 @@ int sentinelResetMasterAndChangeAddress(sentinelRedisInstance *master, char *hos while((de = dictNext(di)) != NULL) { sentinelRedisInstance *slave = dictGetVal(de); - if (sentinelAddrIsEqual(slave->addr,newaddr)) continue; + if (sentinelAddrOrHostnameEqual(slave->addr,newaddr)) continue; slaves[numslaves++] = dupSentinelAddr(slave->addr); } dictReleaseIterator(di); @@ -1624,7 +1619,7 @@ int sentinelResetMasterAndChangeAddress(sentinelRedisInstance *master, char *hos /* If we are switching to a different address, include the old address * as a slave as well, so that we'll be able to sense / reconfigure * the old master. */ - if (!sentinelAddrIsEqual(newaddr,master->addr)) { + if (!sentinelAddrOrHostnameEqual(newaddr,master->addr)) { slaves[numslaves++] = dupSentinelAddr(master->addr); } @@ -2175,7 +2170,7 @@ void rewriteConfigSentinelOption(struct rewriteConfigState *state) { * slave's address, a failover is in progress and the slave was * already successfully promoted. So as the address of this slave * we use the old master address instead. */ - if (sentinelAddrIsEqual(slave_addr,master_addr)) + if (sentinelAddrOrHostnameEqual(slave_addr,master_addr)) slave_addr = master->addr; line = sdscatprintf(sdsempty(), "sentinel known-replica %s %s %d",