summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2022-10-14 13:47:46 +0200
committerjonmv <venstad@gmail.com>2022-10-14 13:47:46 +0200
commit240a1334cb36080f38c14ac42099513529bb50ad (patch)
tree6fc7c2755f14054db00371a4a9297b47ea9e55b2 /config-model
parent6e7459c9eff635d9c8227cd8d1add320f298c0e2 (diff)
12s session timeout for application cluster curator
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java10
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/admin/ClusterControllerTestCase.java5
-rwxr-xr-xconfig-model/src/test/java/com/yahoo/vespa/model/container/ContainerClusterTest.java1
3 files changed, 16 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java
index e316f826ad6..8907c21d39a 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java
@@ -2,6 +2,7 @@
package com.yahoo.vespa.model.container;
import ai.vespa.metricsproxy.http.application.ApplicationMetricsHandler;
+import com.yahoo.cloud.config.CuratorConfig;
import com.yahoo.cloud.config.ZookeeperServerConfig;
import com.yahoo.component.ComponentId;
import com.yahoo.component.ComponentSpecification;
@@ -305,6 +306,15 @@ public final class ApplicationContainerCluster extends ContainerCluster<Applicat
}
}
+ @Override
+ public void getConfig(CuratorConfig.Builder builder) {
+ if (getParent() instanceof ConfigserverCluster) return; // Produces its own config
+ super.getConfig(builder);
+
+ // 12s is 2x the current ZookeeperServerConfig.tickTime() of 6s, and the default minimum the server will accept.
+ builder.zookeeperSessionTimeoutSeconds(12); // TODO jonmv: make configurable
+ }
+
public Optional<String> getTlsClientAuthority() {
return tlsClientAuthority;
}
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/admin/ClusterControllerTestCase.java b/config-model/src/test/java/com/yahoo/vespa/model/admin/ClusterControllerTestCase.java
index 376cf49c396..eb77187014f 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/admin/ClusterControllerTestCase.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/admin/ClusterControllerTestCase.java
@@ -413,6 +413,11 @@ public class ClusterControllerTestCase extends DomBuilderTest {
assertEquals(0, qrStartConfig.jvm().directMemorySizeCache());
assertEquals(16, qrStartConfig.jvm().baseMaxDirectMemorySize());
+ CuratorConfig.Builder curatorBuilder = new CuratorConfig.Builder();
+ model.getConfig(curatorBuilder, "foo");
+ CuratorConfig curatorConfig = curatorBuilder.build();
+ assertEquals(120, curatorConfig.zookeeperSessionTimeoutSeconds());
+
assertReindexingConfigPresent(model);
assertReindexingConfiguredOnAdminCluster(model);
}
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/ContainerClusterTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/ContainerClusterTest.java
index cc6b84de698..da70daa2b4d 100755
--- a/config-model/src/test/java/com/yahoo/vespa/model/container/ContainerClusterTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/container/ContainerClusterTest.java
@@ -343,6 +343,7 @@ public class ContainerClusterTest {
assertEquals(List.of("host-c1", "host-c2"),
config.server().stream().map(CuratorConfig.Server::hostname).collect(Collectors.toList()));
assertTrue(config.zookeeperLocalhostAffinity());
+ assertEquals(12, config.zookeeperSessionTimeoutSeconds());
}
@Test