refactoring

pull/2009/head
Nikita Koksharov 6 years ago
parent e5c84d783a
commit 224a900aab

@ -96,8 +96,8 @@ public class DNSMonitor {
}, dnsMonitoringInterval, TimeUnit.MILLISECONDS); }, dnsMonitoringInterval, TimeUnit.MILLISECONDS);
} }
private void monitorMasters(final AtomicInteger counter) { private void monitorMasters(AtomicInteger counter) {
for (final Entry<URI, InetSocketAddress> entry : masters.entrySet()) { for (Entry<URI, InetSocketAddress> entry : masters.entrySet()) {
Future<InetSocketAddress> resolveFuture = resolver.resolve(InetSocketAddress.createUnresolved(entry.getKey().getHost(), entry.getKey().getPort())); Future<InetSocketAddress> resolveFuture = resolver.resolve(InetSocketAddress.createUnresolved(entry.getKey().getHost(), entry.getKey().getPort()));
resolveFuture.addListener(new FutureListener<InetSocketAddress>() { resolveFuture.addListener(new FutureListener<InetSocketAddress>() {
@Override @Override
@ -118,7 +118,11 @@ public class DNSMonitor {
entry.getKey(), currentMasterAddr.getAddress().getHostAddress(), newMasterAddr.getAddress().getHostAddress()); entry.getKey(), currentMasterAddr.getAddress().getHostAddress(), newMasterAddr.getAddress().getHostAddress());
MasterSlaveEntry masterSlaveEntry = connectionManager.getEntry(currentMasterAddr); MasterSlaveEntry masterSlaveEntry = connectionManager.getEntry(currentMasterAddr);
if (masterSlaveEntry == null) { if (masterSlaveEntry == null) {
log.error("Unable to find master entry for {}", currentMasterAddr); if (connectionManager instanceof SingleConnectionManager) {
log.error("Unable to find master entry for {}. Multiple IP bindings for single hostname supported only in Redisson PRO!", currentMasterAddr);
} else {
log.error("Unable to find master entry for {}", currentMasterAddr);
}
return; return;
} }
masterSlaveEntry.changeMaster(newMasterAddr, entry.getKey()); masterSlaveEntry.changeMaster(newMasterAddr, entry.getKey());
@ -129,8 +133,8 @@ public class DNSMonitor {
} }
} }
private void monitorSlaves(final AtomicInteger counter) { private void monitorSlaves(AtomicInteger counter) {
for (final Entry<URI, InetSocketAddress> entry : slaves.entrySet()) { for (Entry<URI, InetSocketAddress> entry : slaves.entrySet()) {
Future<InetSocketAddress> resolveFuture = resolver.resolve(InetSocketAddress.createUnresolved(entry.getKey().getHost(), entry.getKey().getPort())); Future<InetSocketAddress> resolveFuture = resolver.resolve(InetSocketAddress.createUnresolved(entry.getKey().getHost(), entry.getKey().getPort()));
resolveFuture.addListener(new FutureListener<InetSocketAddress>() { resolveFuture.addListener(new FutureListener<InetSocketAddress>() {
@Override @Override
@ -144,12 +148,12 @@ public class DNSMonitor {
return; return;
} }
final InetSocketAddress currentSlaveAddr = entry.getValue(); InetSocketAddress currentSlaveAddr = entry.getValue();
final InetSocketAddress newSlaveAddr = future.getNow(); InetSocketAddress newSlaveAddr = future.getNow();
if (!newSlaveAddr.getAddress().equals(currentSlaveAddr.getAddress())) { if (!newSlaveAddr.getAddress().equals(currentSlaveAddr.getAddress())) {
log.info("Detected DNS change. Slave {} has changed ip from {} to {}", log.info("Detected DNS change. Slave {} has changed ip from {} to {}",
entry.getKey().getHost(), currentSlaveAddr.getAddress().getHostAddress(), newSlaveAddr.getAddress().getHostAddress()); entry.getKey().getHost(), currentSlaveAddr.getAddress().getHostAddress(), newSlaveAddr.getAddress().getHostAddress());
for (final MasterSlaveEntry masterSlaveEntry : connectionManager.getEntrySet()) { for (MasterSlaveEntry masterSlaveEntry : connectionManager.getEntrySet()) {
if (!masterSlaveEntry.hasSlave(currentSlaveAddr)) { if (!masterSlaveEntry.hasSlave(currentSlaveAddr)) {
continue; continue;
} }

Loading…
Cancel
Save