summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainerCluster.java21
-rwxr-xr-xconfig-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java2
2 files changed, 23 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainerCluster.java
index 58e5ccd7c3a..ab33c647d5f 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainerCluster.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainerCluster.java
@@ -1,9 +1,11 @@
// Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.model.admin.clustercontroller;
+import com.yahoo.config.model.api.ModelContext;
import com.yahoo.config.model.api.Reindexing;
import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.config.model.producer.AbstractConfigProducer;
+import com.yahoo.search.config.QrStartConfig;
import com.yahoo.vespa.model.container.ContainerCluster;
/**
@@ -14,12 +16,14 @@ import com.yahoo.vespa.model.container.ContainerCluster;
*/
public class ClusterControllerContainerCluster extends ContainerCluster<ClusterControllerContainer> {
+ private final ModelContext.FeatureFlags featureFlags;
private final ReindexingContext reindexingContext;
public ClusterControllerContainerCluster(
AbstractConfigProducer<?> parent, String subId, String name, DeployState deployState) {
super(parent, subId, name, deployState, false);
addDefaultHandlersWithVip();
+ this.featureFlags = deployState.featureFlags();
this.reindexingContext = createReindexingContext(deployState);
}
@@ -28,6 +32,23 @@ public class ClusterControllerContainerCluster extends ContainerCluster<ClusterC
@Override protected boolean messageBusEnabled() { return false; }
+ @Override
+ public void getConfig(QrStartConfig.Builder builder) {
+ int maxHeapSize = featureFlags.clusterControllerMaxHeapSizeInMb();
+ boolean verboseGc = (maxHeapSize < 512);
+ builder.jvm
+ .verbosegc(verboseGc)
+ .availableProcessors(2)
+ .compressedClassSpaceSize(32)
+ .minHeapsize(32)
+ .heapsize(maxHeapSize)
+ .heapSizeAsPercentageOfPhysicalMemory(0)
+ .gcopts(getJvmGCOptions().orElse(G1GC));
+ if (getEnvironmentVars() != null) {
+ builder.qrs.env(getEnvironmentVars());
+ }
+ }
+
public ReindexingContext reindexingContext() { return reindexingContext; }
private static ReindexingContext createReindexingContext(DeployState deployState) {
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 26612f7a420..5e9125f560d 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
@@ -620,6 +620,8 @@ public abstract class ContainerCluster<CONTAINER extends Container>
public void setEnvironmentVars(String environmentVars) { this.environmentVars = environmentVars; }
+ public String getEnvironmentVars() { return environmentVars; }
+
public Optional<String> getJvmGCOptions() { return Optional.ofNullable(jvmGCOptions); }
public final void setRpcServerEnabled(boolean rpcServerEnabled) { this.rpcServerEnabled = rpcServerEnabled; }