aboutsummaryrefslogtreecommitdiffstats
path: root/zkfacade
diff options
context:
space:
mode:
authorHåkon Hallingstad <hakon@oath.com>2017-09-06 12:46:44 +0200
committerHåkon Hallingstad <hakon@oath.com>2017-09-06 12:46:44 +0200
commitf22011553430b3dc86dd08d917bd3a8d3b226288 (patch)
treeb049d88c767320a20925288ef21ab5993880f8fe /zkfacade
parentfb1818824b94e1ee4ca553065a2f6ba73b219ca7 (diff)
Add preferred Orchestrator lock
Diffstat (limited to 'zkfacade')
-rw-r--r--zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java8
-rw-r--r--zkfacade/src/test/java/com/yahoo/vespa/zookeeper/CuratorTest.java17
2 files changed, 17 insertions, 8 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 41c774f13c3..15257e11cbe 100644
--- a/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java
+++ b/zkfacade/src/main/java/com/yahoo/vespa/curator/Curator.java
@@ -21,6 +21,7 @@ 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.Arrays;
import java.util.Collections;
@@ -40,7 +41,7 @@ import java.util.concurrent.TimeUnit;
* @author vegardh
* @author bratseth
*/
-public class Curator {
+public class Curator implements AutoCloseable {
private static final long UNKNOWN_HOST_TIMEOUT_MILLIS = TimeUnit.MINUTES.toMillis(30);
private static final int ZK_SESSION_TIMEOUT = 30000;
@@ -269,6 +270,11 @@ public class Curator {
return curatorFramework;
}
+ @Override
+ public void close() {
+ curatorFramework.close();
+ }
+
/**
* Interface for waiting for completion of an operation
*/
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 53d03fa9450..36205bdaca3 100644
--- a/zkfacade/src/test/java/com/yahoo/vespa/zookeeper/CuratorTest.java
+++ b/zkfacade/src/test/java/com/yahoo/vespa/zookeeper/CuratorTest.java
@@ -52,23 +52,26 @@ public class CuratorTest {
@Test
public void require_curator_is_created_from_config() {
- Curator curator = createCurator(createTestConfig());
- assertThat(curator.connectionSpec(), is(spec1 + "," + spec2));
+ try (Curator curator = createCurator(createTestConfig())) {
+ assertThat(curator.connectionSpec(), is(spec1 + "," + spec2));
+ }
}
@Test
public void require_that_curator_can_produce_spec() {
- Curator curator = createCurator(createTestConfig());
- assertThat(curator.connectionSpec(), is(spec1 + "," + spec2));
- assertThat(curator.serverCount(), is(2));
+ try (Curator curator = createCurator(createTestConfig())) {
+ assertThat(curator.connectionSpec(), is(spec1 + "," + spec2));
+ assertThat(curator.serverCount(), is(2));
+ }
}
@Test
public void require_that_server_count_is_correct() {
ConfigserverConfig.Builder builder = new ConfigserverConfig.Builder();
builder.zookeeperserver(createZKBuilder("localhost", port1));
- Curator curator = createCurator(new ConfigserverConfig(builder));
- assertThat(curator.serverCount(), is(1));
+ try (Curator curator = createCurator(new ConfigserverConfig(builder))) {
+ assertThat(curator.serverCount(), is(1));
+ }
}
private ConfigserverConfig createTestConfig() {