summaryrefslogtreecommitdiffstats
path: root/controller-server
diff options
context:
space:
mode:
authorValerij Fredriksen <freva@users.noreply.github.com>2017-10-17 09:28:35 +0200
committerAndreas Eriksen <andreer@pvv.ntnu.no>2017-10-17 09:28:35 +0200
commitbfde0975c255eb0c3378d2bf78fc6806cebbabac (patch)
tree307780577c3a5e5e8f0c69f3040e289b95d79699 /controller-server
parent3d6d4657c5fad4a18d821d914726596475dd1ba7 (diff)
Serverpool in ZK (#3764)
* Serverpool in ZK * Change timeouts
Diffstat (limited to 'controller-server')
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/CuratorDb.java38
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");
+ }
}