aboutsummaryrefslogtreecommitdiffstats
path: root/zookeeper-server
diff options
context:
space:
mode:
authorHarald Musum <musum@yahooinc.com>2023-02-07 14:36:08 +0100
committerHarald Musum <musum@yahooinc.com>2023-02-07 14:36:08 +0100
commit6fdaaf7318bcc75c179adaf1c1800d2e4b7d78eb (patch)
tree2082fdd81b45ba3fd839ee2aae214bd9bd4063cf /zookeeper-server
parent18a5576a8e1b295f9bdbec55270ebdcb7e0ca05e (diff)
No need to wait until connected in cluster controller
VespaZooKeeperSever now guarantees that server is working by writing a node, so no need to do an extra check in cluster controller
Diffstat (limited to 'zookeeper-server')
-rw-r--r--zookeeper-server/zookeeper-server-common/src/main/java/com/yahoo/vespa/zookeeper/VespaZooKeeperServer.java4
-rw-r--r--zookeeper-server/zookeeper-server/src/main/java/com/yahoo/vespa/zookeeper/ReconfigurableVespaZooKeeperServer.java2
-rw-r--r--zookeeper-server/zookeeper-server/src/main/java/com/yahoo/vespa/zookeeper/VespaZooKeeperServerImpl.java3
3 files changed, 8 insertions, 1 deletions
diff --git a/zookeeper-server/zookeeper-server-common/src/main/java/com/yahoo/vespa/zookeeper/VespaZooKeeperServer.java b/zookeeper-server/zookeeper-server-common/src/main/java/com/yahoo/vespa/zookeeper/VespaZooKeeperServer.java
index 68fcbcc4983..13b395a97f2 100644
--- a/zookeeper-server/zookeeper-server-common/src/main/java/com/yahoo/vespa/zookeeper/VespaZooKeeperServer.java
+++ b/zookeeper-server/zookeeper-server-common/src/main/java/com/yahoo/vespa/zookeeper/VespaZooKeeperServer.java
@@ -4,7 +4,9 @@ package com.yahoo.vespa.zookeeper;
import java.nio.file.Path;
/**
- * Interface for a component that starts/stops a ZooKeeper server.
+ * Interface for a component that starts/stops a ZooKeeper server. Implementations should make sure
+ * that the server is up and accepts connection (typically by returning from constructor only after
+ * writing a node to ZooKeeper successfully).
*
* @author hmusum
*/
diff --git a/zookeeper-server/zookeeper-server/src/main/java/com/yahoo/vespa/zookeeper/ReconfigurableVespaZooKeeperServer.java b/zookeeper-server/zookeeper-server/src/main/java/com/yahoo/vespa/zookeeper/ReconfigurableVespaZooKeeperServer.java
index 8161e4bba4b..5bf7c9bd3e9 100644
--- a/zookeeper-server/zookeeper-server/src/main/java/com/yahoo/vespa/zookeeper/ReconfigurableVespaZooKeeperServer.java
+++ b/zookeeper-server/zookeeper-server/src/main/java/com/yahoo/vespa/zookeeper/ReconfigurableVespaZooKeeperServer.java
@@ -12,6 +12,8 @@ import java.time.Duration;
* Starts or reconfigures zookeeper cluster.
* The QuorumPeer conditionally created here is owned by the Reconfigurer;
* when it already has a peer, that peer is used here in case start or shutdown is required.
+ * Guarantees that server is up by writing a node to ZooKeeper successfully before
+ * returning from constructor.
*
* @author hmusum
*/
diff --git a/zookeeper-server/zookeeper-server/src/main/java/com/yahoo/vespa/zookeeper/VespaZooKeeperServerImpl.java b/zookeeper-server/zookeeper-server/src/main/java/com/yahoo/vespa/zookeeper/VespaZooKeeperServerImpl.java
index 8adabeedb1b..bb2b02c5c9b 100644
--- a/zookeeper-server/zookeeper-server/src/main/java/com/yahoo/vespa/zookeeper/VespaZooKeeperServerImpl.java
+++ b/zookeeper-server/zookeeper-server/src/main/java/com/yahoo/vespa/zookeeper/VespaZooKeeperServerImpl.java
@@ -9,6 +9,9 @@ import java.nio.file.Path;
import java.time.Duration;
/**
+ * ZooKeeper server. Guarantees that the server is up by writing a node to ZooKeeper successfully before
+ * returning from constructor.
+ *
* @author Ulf Lilleengen
* @author Harald Musum
*/