diff options
author | Valerij Fredriksen <freva@users.noreply.github.com> | 2017-10-17 09:28:35 +0200 |
---|---|---|
committer | Andreas Eriksen <andreer@pvv.ntnu.no> | 2017-10-17 09:28:35 +0200 |
commit | bfde0975c255eb0c3378d2bf78fc6806cebbabac (patch) | |
tree | 307780577c3a5e5e8f0c69f3040e289b95d79699 /controller-server/src | |
parent | 3d6d4657c5fad4a18d821d914726596475dd1ba7 (diff) |
Serverpool in ZK (#3764)
* Serverpool in ZK
* Change timeouts
Diffstat (limited to 'controller-server/src')
-rw-r--r-- | controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/CuratorDb.java | 38 |
1 files changed, 35 insertions, 3 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/CuratorDb.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/CuratorDb.java index 2ca662ccb66..03b4dd6efe3 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/CuratorDb.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/CuratorDb.java @@ -144,7 +144,15 @@ public class CuratorDb { } public Lock lockProvisionState(String provisionStateId) { - return lock(lockPath(provisionStateId), Duration.ofMinutes(30)); + return lock(lockPath(provisionStateId), Duration.ofSeconds(1)); + } + + public Lock lockVespaServerPool() { + return lock(root.append("locks").append("vespaServerPoolLock"), Duration.ofSeconds(1)); + } + + public Lock lockOpenStackServerPool() { + return lock(root.append("locks").append("openStackServerPoolLock"), Duration.ofSeconds(1)); } // -------------- Read and write -------------------------------------------------- @@ -229,17 +237,33 @@ public class CuratorDb { } public Optional<byte[]> readProvisionState(String provisionId) { - return curator.getData(provisionStatePath().append(provisionId)); + return curator.getData(provisionStatePath(provisionId)); } public void writeProvisionState(String provisionId, byte[] data) { - curator.set(provisionStatePath().append(provisionId), data); + curator.set(provisionStatePath(provisionId), data); } public List<String> readProvisionStateIds() { return curator.getChildren(provisionStatePath()); } + public Optional<byte[]> readVespaServerPool() { + return curator.getData(vespaServerPoolPath()); + } + + public void writeVespaServerPool(byte[] data) { + curator.set(vespaServerPoolPath(), data); + } + + public Optional<byte[]> readOpenStackServerPool() { + return curator.getData(openStackServerPoolPath()); + } + + public void writeOpenStackServerPool(byte[] data) { + curator.set(openStackServerPoolPath(), data); + } + // -------------- Paths -------------------------------------------------- private Path systemVersionPath() { @@ -290,4 +314,12 @@ public class CuratorDb { private Path provisionStatePath(String provisionId) { return provisionStatePath().append(provisionId); } + + private Path vespaServerPoolPath() { + return root.append("vespaServerPool"); + } + + private Path openStackServerPoolPath() { + return root.append("openStackServerPool"); + } } |