From 13b54a669e90751f0402931e1428fb6087114256 Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Wed, 20 Dec 2017 15:45:10 +0100 Subject: Revert "Hmusum/order zookeeper server list so localhost comes first" --- .../main/java/com/yahoo/vespa/curator/Curator.java | 30 ++++++++-------------- .../com/yahoo/vespa/zookeeper/CuratorTest.java | 17 +----------- 2 files changed, 11 insertions(+), 36 deletions(-) diff --git a/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java b/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java index a9d099fea31..15257e11cbe 100644 --- a/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java +++ b/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java @@ -3,7 +3,6 @@ package com.yahoo.vespa.curator; import com.google.inject.Inject; import com.yahoo.cloud.config.ConfigserverConfig; -import com.yahoo.net.HostName; import com.yahoo.path.Path; import com.yahoo.vespa.curator.recipes.CuratorCounter; import com.yahoo.vespa.zookeeper.ZooKeeperServer; @@ -22,8 +21,8 @@ import org.apache.curator.framework.state.ConnectionState; import org.apache.curator.framework.state.ConnectionStateListener; import org.apache.curator.retry.ExponentialBackoffRetry; +import java.io.Closeable; import java.time.Duration; -import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; @@ -70,26 +69,17 @@ public class Curator implements AutoCloseable { } private static String createConnectionSpec(ConfigserverConfig config) { - List servers = createAndOrderServerList(config); - return String.join(",", servers); - } - - private static List createAndOrderServerList(ConfigserverConfig config) { - String hostName = HostName.getLocalhost(); - int configServerCount = config.zookeeperserver().size(); - List servers = new ArrayList<>(); - - int indexForThisConfigServer = 0; - for (int i = 0; i < configServerCount; i++) { + StringBuilder sb = new StringBuilder(); + for (int i = 0; i < config.zookeeperserver().size(); i++) { ConfigserverConfig.Zookeeperserver server = config.zookeeperserver(i); - servers.add(server.hostname() + ":" + server.port()); - if (server.hostname().equals(hostName)) - indexForThisConfigServer = i; + sb.append(server.hostname()); + sb.append(":"); + sb.append(server.port()); + if (i < config.zookeeperserver().size() - 1) { + sb.append(","); + } } - // Rotate list of servers so that config server on this host is first in the list - if (indexForThisConfigServer != 0) - Collections.rotate(servers, configServerCount - indexForThisConfigServer); - return servers; + return sb.toString(); } /** diff --git a/zkfacade/src/test/java/com/yahoo/vespa/zookeeper/CuratorTest.java b/zkfacade/src/test/java/com/yahoo/vespa/zookeeper/CuratorTest.java index 396555d5e3a..36205bdaca3 100644 --- a/zkfacade/src/test/java/com/yahoo/vespa/zookeeper/CuratorTest.java +++ b/zkfacade/src/test/java/com/yahoo/vespa/zookeeper/CuratorTest.java @@ -2,7 +2,6 @@ package com.yahoo.vespa.zookeeper; import com.yahoo.cloud.config.ConfigserverConfig; -import com.yahoo.net.HostName; import com.yahoo.vespa.curator.Curator; import org.apache.curator.test.TestingServer; import org.junit.After; @@ -12,8 +11,8 @@ import org.junit.Test; import java.io.IOException; import static org.hamcrest.core.Is.is; +import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertThat; -import static org.junit.Assert.assertTrue; /** * Sets up actual ZooKeeper servers and verifies we can talk to them. @@ -75,20 +74,6 @@ public class CuratorTest { } } - @Test - public void require_that_server_order_is_correct() { - ConfigserverConfig.Builder builder = new ConfigserverConfig.Builder(); - builder.zookeeperserver(createZKBuilder("localhost", port1)); - builder.zookeeperserver(createZKBuilder(HostName.getLocalhost(), port2)); - builder.zookeeperserver(createZKBuilder("localhost", 1234)); - builder.zookeeperserver(createZKBuilder("localhost", 6789)); - try (Curator curator = createCurator(new ConfigserverConfig(builder))) { - assertThat(curator.serverCount(), is(4)); - // host this is running on should come first - assertTrue(curator.connectionSpec().startsWith(HostName.getLocalhost() + ":" + port2 + ",localhost:1234")); - } - } - private ConfigserverConfig createTestConfig() { ConfigserverConfig.Builder builder = new ConfigserverConfig.Builder(); builder.zookeeperserver(createZKBuilder("localhost", port1)); -- cgit v1.2.3