diff options
author | Harald Musum <musum@yahooinc.com> | 2023-02-07 14:36:08 +0100 |
---|---|---|
committer | Harald Musum <musum@yahooinc.com> | 2023-02-07 14:36:08 +0100 |
commit | 6fdaaf7318bcc75c179adaf1c1800d2e4b7d78eb (patch) | |
tree | 2082fdd81b45ba3fd839ee2aae214bd9bd4063cf /zookeeper-server | |
parent | 18a5576a8e1b295f9bdbec55270ebdcb7e0ca05e (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')
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 */ |