diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2023-01-18 15:01:53 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-18 15:01:53 +0100 |
commit | 216b3be5a097919b7ddb7010c098a9ddfb35a64a (patch) | |
tree | 528bdb91ef46cfd23576f6cd22e0ce8862d7675d | |
parent | 7b736f0a09444664cff118eac5b28e608632de72 (diff) | |
parent | d374f1fd3d681de49b2a4c3a6909ae6857769550 (diff) |
Merge pull request #25612 from vespa-engine/balder/gc-ignore-thread-stack-sizes-feature-flag
Balder/gc ignore thread stack sizes feature flag
5 files changed, 5 insertions, 22 deletions
diff --git a/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java b/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java index abeca38a0c4..04de4d2e277 100644 --- a/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java +++ b/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java @@ -101,7 +101,6 @@ public interface ModelContext { @ModelFeatureFlag(owners = {"hmusum"}) default double resourceLimitMemory() { return 0.8; } @ModelFeatureFlag(owners = {"geirst", "vekterli"}) default double minNodeRatioPerGroup() { return 0.0; } @ModelFeatureFlag(owners = {"arnej"}) default boolean forwardIssuesAsErrors() { return true; } - @ModelFeatureFlag(owners = {"arnej"}) default boolean ignoreThreadStackSizes() { return false; } @ModelFeatureFlag(owners = {"arnej"}) default boolean useV8GeoPositions() { return false; } @ModelFeatureFlag(owners = {"baldersheim", "geirst", "toregge"}) default int maxCompactBuffers() { return 1; } @ModelFeatureFlag(owners = {"arnej", "andreer"}) default List<String> ignoredHttpUserAgents() { return List.of(); } @@ -114,6 +113,7 @@ public interface ModelContext { @ModelFeatureFlag(owners = {"tokle, bjorncs"}, removeAfter = "8.108") default boolean enableDataPlaneFilter() { return true; } //Below are all flags that must be kept until 7 is out of the door + @ModelFeatureFlag(owners = {"arnej"}, removeAfter="7.last") default boolean ignoreThreadStackSizes() { return false; } @ModelFeatureFlag(owners = {"vekterli"}, removeAfter="7.last") default boolean useThreePhaseUpdates() { return true; } @ModelFeatureFlag(owners = {"baldersheim"}, removeAfter="7.last") default boolean skipCommunicationManagerThread() { return true; } @ModelFeatureFlag(owners = {"baldersheim"}, removeAfter="7.last") default boolean skipMbusRequestThread() { return true; } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/ConfigSentinel.java b/config-model/src/main/java/com/yahoo/vespa/model/ConfigSentinel.java index dfb5b1d3e22..bdb33d11225 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/ConfigSentinel.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/ConfigSentinel.java @@ -19,20 +19,17 @@ public class ConfigSentinel extends AbstractService implements SentinelConfig.Pr private final ApplicationId applicationId; private final Zone zone; - private final boolean ignoreRequestedStackSizes; /** * Constructs a new ConfigSentinel for the given host. * * @param host Physical host on which to run. */ - public ConfigSentinel(Host host, ApplicationId applicationId, Zone zone, - ModelContext.FeatureFlags featureFlags) + public ConfigSentinel(Host host, ApplicationId applicationId, Zone zone) { super(host, "sentinel"); this.applicationId = applicationId; this.zone = zone; - this.ignoreRequestedStackSizes = featureFlags.ignoreThreadStackSizes(); portsMeta.on(0).tag("rpc").tag("admin"); portsMeta.on(1).tag("telnet").tag("interactive").tag("http").tag("state"); setProp("clustertype", "hosts"); @@ -75,7 +72,6 @@ public class ConfigSentinel extends AbstractService implements SentinelConfig.Pr @Override public void getConfig(SentinelConfig.Builder builder) { builder.application(getApplicationConfig()); - builder.ignoreRequestedStackSizes(ignoreRequestedStackSizes); for (Service s : getHostResource().getServices()) { s.getStartupCommand().ifPresent(command -> builder.service(getServiceConfig(s, command))); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java index e29615b7fb3..67a5b27533d 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/Admin.java @@ -1,16 +1,13 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.model.admin; -import com.yahoo.config.model.api.ModelContext; import com.yahoo.cloud.config.SlobroksConfig; import com.yahoo.cloud.config.ZookeepersConfig; import com.yahoo.cloud.config.log.LogdConfig; import com.yahoo.config.model.ConfigModelContext.ApplicationType; import com.yahoo.config.model.deploy.DeployState; import com.yahoo.config.model.producer.AbstractConfigProducer; -import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.ClusterSpec; -import com.yahoo.config.provision.Zone; import com.yahoo.vespa.model.AbstractService; import com.yahoo.vespa.model.ConfigProxy; import com.yahoo.vespa.model.ConfigSentinel; @@ -250,8 +247,7 @@ public class Admin extends AbstractConfigProducer<Admin> implements Serializable } private void addCommonServices(HostResource host, DeployState deployState) { - addConfigSentinel(deployState, host, deployState.getProperties().applicationId(), deployState.zone(), - deployState.featureFlags()); + addConfigSentinel(deployState, host); addLogd(deployState, host); addConfigProxy(deployState, host); addFileDistribution(host); @@ -271,10 +267,9 @@ public class Admin extends AbstractConfigProducer<Admin> implements Serializable } } - private void addConfigSentinel(DeployState deployState, HostResource host, - ApplicationId applicationId, Zone zone, ModelContext.FeatureFlags featureFlags) + private void addConfigSentinel(DeployState deployState, HostResource host) { - ConfigSentinel configSentinel = new ConfigSentinel(host.getHost(), applicationId, zone, featureFlags); + ConfigSentinel configSentinel = new ConfigSentinel(host.getHost(), deployState.getProperties().applicationId(), deployState.zone()); addAndInitializeService(deployState, host, configSentinel); host.getHost().setConfigSentinel(configSentinel); } diff --git a/configd/src/apps/sentinel/manager.cpp b/configd/src/apps/sentinel/manager.cpp index ffa9c9281fa..631f63febd5 100644 --- a/configd/src/apps/sentinel/manager.cpp +++ b/configd/src/apps/sentinel/manager.cpp @@ -79,11 +79,6 @@ Manager::doConfigure() LOG_ASSERT(_env.configOwner().hasConfig()); const SentinelConfig& config(_env.configOwner().getConfig()); - if (config.ignoreRequestedStackSizes) { - setenv("VESPA_IGNORE_REQUESTED_STACK_SIZES", "true", 1); - } else { - unsetenv("VESPA_IGNORE_REQUESTED_STACK_SIZES"); - } _env.rpcPort(config.port.rpc); _env.statePort(config.port.telnet); diff --git a/configdefinitions/src/vespa/sentinel.def b/configdefinitions/src/vespa/sentinel.def index 1a1184707f8..62080705067 100644 --- a/configdefinitions/src/vespa/sentinel.def +++ b/configdefinitions/src/vespa/sentinel.def @@ -28,9 +28,6 @@ connectivity.minOkPercent int default=50 ## Absolute number of nodes with confirmed network connectivity problems, maximum connectivity.maxBadCount int default=1 -## Ask low-level thread creation to honor requested stack size -ignoreRequestedStackSizes bool default=false restart - ## The command to run. This will be run by sh -c, and the following ## environment variables are defined: $ROOT, $VESPA_SERVICE_NAME, ## $VESPA_CONFIG_ID |