From 5bf819db9c2122959f6b06f7dbbbab4cdf53f97c Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Mon, 14 Oct 2019 17:38:18 +0200 Subject: Unify qrstart config generation --- .../com/yahoo/vespa/model/admin/LogserverContainer.java | 2 +- .../vespa/model/admin/LogserverContainerCluster.java | 9 --------- .../clustercontroller/ClusterControllerContainer.java | 13 +------------ .../metricsproxy/MetricsProxyContainerCluster.java | 14 -------------- .../model/container/ApplicationContainerCluster.java | 17 +++++++++++++++++ .../yahoo/vespa/model/container/ContainerCluster.java | 15 ++++++++------- .../vespa/model/container/ContainerClusterTest.java | 4 ++-- 7 files changed, 29 insertions(+), 45 deletions(-) diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainer.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainer.java index 9ea51a83bf1..2a0cfadbfa8 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainer.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainer.java @@ -15,7 +15,7 @@ public class LogserverContainer extends Container { public LogserverContainer(AbstractConfigProducer parent) { super(parent, "" + 0, 0); addComponent(new AccessLogComponent(AccessLogComponent.AccessLogType.jsonAccessLog, ((LogserverContainerCluster) parent).getName(), true)); - appendJvmOptions("-Xms32m -Xmx512m"); + appendJvmOptions("-Xms32m"); } @Override diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainerCluster.java index 9b57f4ace95..5714d41ef67 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/LogserverContainerCluster.java @@ -4,7 +4,6 @@ package com.yahoo.vespa.model.admin; import com.yahoo.config.model.deploy.DeployState; import com.yahoo.config.model.producer.AbstractConfigProducer; import com.yahoo.container.handler.ThreadpoolConfig; -import com.yahoo.search.config.QrStartConfig; import com.yahoo.vespa.model.container.ContainerCluster; import com.yahoo.vespa.model.container.component.Handler; @@ -23,14 +22,6 @@ public class LogserverContainerCluster extends ContainerCluster implements BundlesConfig.Producer, + QrStartConfig.Producer, RankProfilesConfig.Producer, RankingConstantsConfig.Producer, ServletPathsConfig.Producer, @@ -178,6 +182,19 @@ public final class ApplicationContainerCluster extends ContainerCluster getTlsSecrets() { return tlsSecrets; } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java index 4e043b0f2bf..e3e26cc39a9 100755 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java @@ -37,6 +37,7 @@ import com.yahoo.vespa.configdefinition.IlscriptsConfig; import com.yahoo.vespa.model.PortsMeta; import com.yahoo.vespa.model.Service; import com.yahoo.vespa.model.admin.monitoring.Monitoring; +import com.yahoo.vespa.model.application.validation.RestartConfigs; import com.yahoo.vespa.model.clients.ContainerDocumentApi; import com.yahoo.vespa.model.container.component.AccessLogComponent; import com.yahoo.vespa.model.container.component.Component; @@ -78,6 +79,7 @@ import static com.yahoo.container.core.BundleLoaderProperties.DISK_BUNDLE_PREFIX * @author Einar M R Rosenvinge * @author Tony Vaagenes */ +@RestartConfigs({QrStartConfig.class}) public abstract class ContainerCluster extends AbstractConfigProducer> implements @@ -484,13 +486,12 @@ public abstract class ContainerCluster @Override public void getConfig(QrStartConfig.Builder builder) { - QrStartConfig.Jvm.Builder jvmBuilder = builder.jvm; - if (getMemoryPercentage().isPresent()) { - jvmBuilder.heapSizeAsPercentageOfPhysicalMemory(getMemoryPercentage().get()); - } else if (isHostedVespa()) { - jvmBuilder.heapSizeAsPercentageOfPhysicalMemory(getHostClusterId().isPresent() ? 17 : 60); - } - jvmBuilder.gcopts(Objects.requireNonNullElse(jvmGCOptions, G1GC)); + builder.jvm + .verbosegc(false) + .availableProcessors(2) + .heapsize(512) + .heapSizeAsPercentageOfPhysicalMemory(0) + .gcopts(Objects.requireNonNullElse(jvmGCOptions, G1GC)); if (environmentVars != null) { builder.qrs.env(environmentVars); } 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 ec8a810c1a7..695e82daf0b 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 @@ -151,11 +151,11 @@ public class ContainerClusterTest { ClusterControllerContainerCluster cluster = createClusterControllerCluster(root); addClusterController(root.deployLogger(), cluster, "host-c1"); assertEquals(1, cluster.getContainers().size()); - ClusterControllerContainer container = (ClusterControllerContainer) cluster.getContainers().get(0); QrStartConfig.Builder qrBuilder = new QrStartConfig.Builder(); - container.getConfig(qrBuilder); + cluster.getConfig(qrBuilder); QrStartConfig qrStartConfig = new QrStartConfig(qrBuilder); assertEquals(512, qrStartConfig.jvm().heapsize()); + assertEquals(0, qrStartConfig.jvm().heapSizeAsPercentageOfPhysicalMemory()); ThreadpoolConfig.Builder tpBuilder = new ThreadpoolConfig.Builder(); cluster.getConfig(tpBuilder); -- cgit v1.2.3 From e2c38221f0a93298e8f785d927c404607dc91854 Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Mon, 14 Oct 2019 17:41:26 +0200 Subject: Restart is on service level, not cluster level. --- .../com/yahoo/vespa/model/container/ApplicationContainerCluster.java | 2 -- .../src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java | 2 -- 2 files changed, 4 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 0f90abc94bb..55f6a0b3825 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 @@ -18,7 +18,6 @@ import com.yahoo.search.config.QrStartConfig; import com.yahoo.vespa.config.search.RankProfilesConfig; import com.yahoo.vespa.config.search.core.RankingConstantsConfig; import com.yahoo.vespa.defaults.Defaults; -import com.yahoo.vespa.model.application.validation.RestartConfigs; import com.yahoo.vespa.model.container.component.Component; import com.yahoo.vespa.model.container.component.ConfigProducerGroup; import com.yahoo.vespa.model.container.component.Servlet; @@ -41,7 +40,6 @@ import java.util.stream.Stream; * * @author gjoranv */ -@RestartConfigs({QrStartConfig.class}) public final class ApplicationContainerCluster extends ContainerCluster implements BundlesConfig.Producer, QrStartConfig.Producer, diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java index e3e26cc39a9..a1aef1c0c91 100755 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java @@ -37,7 +37,6 @@ import com.yahoo.vespa.configdefinition.IlscriptsConfig; import com.yahoo.vespa.model.PortsMeta; import com.yahoo.vespa.model.Service; import com.yahoo.vespa.model.admin.monitoring.Monitoring; -import com.yahoo.vespa.model.application.validation.RestartConfigs; import com.yahoo.vespa.model.clients.ContainerDocumentApi; import com.yahoo.vespa.model.container.component.AccessLogComponent; import com.yahoo.vespa.model.container.component.Component; @@ -79,7 +78,6 @@ import static com.yahoo.container.core.BundleLoaderProperties.DISK_BUNDLE_PREFIX * @author Einar M R Rosenvinge * @author Tony Vaagenes */ -@RestartConfigs({QrStartConfig.class}) public abstract class ContainerCluster extends AbstractConfigProducer> implements -- cgit v1.2.3