summaryrefslogtreecommitdiffstats
path: root/zookeeper-server
diff options
context:
space:
mode:
authorHarald Musum <musum@verizonmedia.com>2020-12-07 14:40:47 +0100
committerHarald Musum <musum@verizonmedia.com>2020-12-07 14:40:47 +0100
commit9e82c2c81e161a1cd449456d5f8ba797762ecdcd (patch)
treea711c2ef7dbea38c7acdb1db11be00c3bc4394b3 /zookeeper-server
parent7e7b7c72b7ca4131f6f29efa0f9d63f857d9f369 (diff)
parent7e8c5010e490417a7d9fb93f524acf75cf7f4c6e (diff)
Merge branch 'master' into hmusum/refactor-reconfigurer
Diffstat (limited to 'zookeeper-server')
-rw-r--r--zookeeper-server/zookeeper-server-3.5.6/src/main/java/com/yahoo/vespa/zookeeper/Reconfigurer.java9
-rw-r--r--zookeeper-server/zookeeper-server-3.5.6/src/test/java/com/yahoo/vespa/zookeeper/ReconfigurerTest.java8
2 files changed, 9 insertions, 8 deletions
diff --git a/zookeeper-server/zookeeper-server-3.5.6/src/main/java/com/yahoo/vespa/zookeeper/Reconfigurer.java b/zookeeper-server/zookeeper-server-3.5.6/src/main/java/com/yahoo/vespa/zookeeper/Reconfigurer.java
index 90de4a9472e..6a87d8547c1 100644
--- a/zookeeper-server/zookeeper-server-3.5.6/src/main/java/com/yahoo/vespa/zookeeper/Reconfigurer.java
+++ b/zookeeper-server/zookeeper-server-3.5.6/src/main/java/com/yahoo/vespa/zookeeper/Reconfigurer.java
@@ -4,6 +4,7 @@ package com.yahoo.vespa.zookeeper;
import com.google.inject.Inject;
import com.yahoo.cloud.config.ZookeeperServerConfig;
import com.yahoo.component.AbstractComponent;
+import com.yahoo.net.HostName;
import com.yahoo.yolean.Exceptions;
import java.time.Duration;
@@ -88,7 +89,7 @@ public class Reconfigurer extends AbstractComponent {
log.log(Level.INFO, "Will reconfigure ZooKeeper cluster in " + reconfigWaitPeriod() +
". Joining servers: " + joiningServers + ", leaving servers: " + leavingServers);
sleeper.accept(reconfigWaitPeriod());
- String connectionSpec = connectionSpec(activeConfig);
+ String connectionSpec = localConnectionSpec(activeConfig);
Instant end = Instant.now().plus(reconfigTimeout);
// Loop reconfiguring since we might need to wait until another reconfiguration is finished before we can succeed
for (int attempts = 1; Instant.now().isBefore(end); attempts++) {
@@ -116,10 +117,8 @@ public class Reconfigurer extends AbstractComponent {
return reconfigInterval.multipliedBy(activeConfig.myid());
}
- private static String connectionSpec(ZookeeperServerConfig config) {
- return config.server().stream()
- .map(server -> server.hostname() + ":" + config.clientPort())
- .collect(Collectors.joining(","));
+ private static String localConnectionSpec(ZookeeperServerConfig config) {
+ return HostName.getLocalhost() + ":" + config.clientPort();
}
private static List<String> serverIds(ZookeeperServerConfig config) {
diff --git a/zookeeper-server/zookeeper-server-3.5.6/src/test/java/com/yahoo/vespa/zookeeper/ReconfigurerTest.java b/zookeeper-server/zookeeper-server-3.5.6/src/test/java/com/yahoo/vespa/zookeeper/ReconfigurerTest.java
index e8ee17192ee..662c88289d8 100644
--- a/zookeeper-server/zookeeper-server-3.5.6/src/test/java/com/yahoo/vespa/zookeeper/ReconfigurerTest.java
+++ b/zookeeper-server/zookeeper-server-3.5.6/src/test/java/com/yahoo/vespa/zookeeper/ReconfigurerTest.java
@@ -2,6 +2,7 @@
package com.yahoo.vespa.zookeeper;
import com.yahoo.cloud.config.ZookeeperServerConfig;
+import com.yahoo.net.HostName;
import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
@@ -46,7 +47,7 @@ public class ReconfigurerTest {
// Cluster grows
ZookeeperServerConfig nextConfig = createConfig(5, true);
reconfigurer.startOrReconfigure(nextConfig);
- assertEquals("node0:2181,node1:2181,node2:2181", reconfigurer.connectionSpec());
+ assertEquals("node1:2181", reconfigurer.connectionSpec());
assertEquals("3=node3:2182:2183;2181,4=node4:2182:2183;2181", reconfigurer.joiningServers());
assertNull("No servers are leaving", reconfigurer.leavingServers());
assertEquals(1, reconfigurer.reconfigurations());
@@ -61,7 +62,7 @@ public class ReconfigurerTest {
nextConfig = createConfig(3, true);
reconfigurer.startOrReconfigure(nextConfig);
assertEquals(2, reconfigurer.reconfigurations());
- assertEquals("node0:2181,node1:2181,node2:2181,node3:2181,node4:2181", reconfigurer.connectionSpec());
+ assertEquals("node1:2181", reconfigurer.connectionSpec());
assertNull("No servers are joining", reconfigurer.joiningServers());
assertEquals("3,4", reconfigurer.leavingServers());
assertSame(nextConfig, reconfigurer.activeConfig());
@@ -76,7 +77,7 @@ public class ReconfigurerTest {
ZookeeperServerConfig nextConfig = createConfig(5, true);
reconfigurer.startOrReconfigure(nextConfig);
- assertEquals("node0:2181,node1:2181,node2:2181", reconfigurer.connectionSpec());
+ assertEquals("node1:2181", reconfigurer.connectionSpec());
assertEquals("3=node3:2182:2183;2181,4=node4:2182:2183;2181", reconfigurer.joiningServers());
assertNull("No servers are leaving", reconfigurer.leavingServers());
assertEquals(1, reconfigurer.reconfigurations());
@@ -124,6 +125,7 @@ public class ReconfigurerTest {
TestableReconfigurer(TestableZkAdmin zkReconfigurer) {
super(zkReconfigurer);
this.zkReconfigurer = zkReconfigurer;
+ HostName.setHostNameForTestingOnly("node1");
}
@Override