diff options
author | Harald Musum <musum@yahooinc.com> | 2022-09-22 13:11:42 +0200 |
---|---|---|
committer | Harald Musum <musum@yahooinc.com> | 2022-09-22 13:11:42 +0200 |
commit | 9e2bc23337cc410e04217bbfdab87cb0f892ec08 (patch) | |
tree | 253ec345801edc550b173f2f6a189813c9e0db24 | |
parent | 1957bf2e63c2ad903bd1f6ccbde48de1141dca11 (diff) |
Set deature flag and config value for cluster-controller-state-gather-count to 1
7 files changed, 10 insertions, 24 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 838fd9b6b26..fe1d187979e 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 @@ -131,7 +131,7 @@ public interface ModelContext { @ModelFeatureFlag(owners = {"tokle"}) default boolean enableProxyProtocolMixedMode() { return true; } @ModelFeatureFlag(owners = {"arnej"}) default String logFileCompressionAlgorithm(String defVal) { return defVal; } @ModelFeatureFlag(owners = {"vekterli"}) default boolean useTwoPhaseDocumentGc() { return false; } - @ModelFeatureFlag(owners = {"hmusum"}) default int clusterControllerStateGatherCount() { return 2; } + @ModelFeatureFlag(owners = {"hmusum"}, removeAfter="8.58") default int clusterControllerStateGatherCount() { return 1; } @ModelFeatureFlag(owners = {"tokle"}) default boolean useRestrictedDataPlaneBindings() { return false; } @ModelFeatureFlag(owners = {"baldersheim", "vekterli"}) default boolean computeCoverageFromTargetActiveDocs() { return false; } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterControllerConfig.java b/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterControllerConfig.java index 642b182f0b7..df70f7c3158 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterControllerConfig.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterControllerConfig.java @@ -1,11 +1,10 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.model.content; -import com.yahoo.config.model.api.ModelContext; import com.yahoo.config.model.deploy.DeployState; -import com.yahoo.vespa.config.content.FleetcontrollerConfig; import com.yahoo.config.model.producer.AbstractConfigProducer; import com.yahoo.config.model.producer.AbstractConfigProducerRoot; +import com.yahoo.vespa.config.content.FleetcontrollerConfig; import com.yahoo.vespa.model.VespaModel; import com.yahoo.vespa.model.builder.xml.dom.ModelElement; import com.yahoo.vespa.model.builder.xml.dom.VespaDomBuilder; @@ -23,13 +22,11 @@ public class ClusterControllerConfig extends AbstractConfigProducer<ClusterContr private final String clusterName; private final ModelElement clusterElement; private final ResourceLimits resourceLimits; - private final int clusterControllerStateGatherCount; - public Builder(String clusterName, ModelElement clusterElement, ResourceLimits resourceLimits, ModelContext.FeatureFlags featureFlags) { + public Builder(String clusterName, ModelElement clusterElement, ResourceLimits resourceLimits) { this.clusterName = clusterName; this.clusterElement = clusterElement; this.resourceLimits = resourceLimits; - this.clusterControllerStateGatherCount = featureFlags.clusterControllerStateGatherCount(); } @Override @@ -55,15 +52,13 @@ public class ClusterControllerConfig extends AbstractConfigProducer<ClusterContr tuning.childAsDouble("min-storage-up-ratio"), bucketSplittingMinimumBits, minNodeRatioPerGroup, - resourceLimits, - clusterControllerStateGatherCount); + resourceLimits); } else { return new ClusterControllerConfig(ancestor, clusterName, null, null, null, null, null, null, bucketSplittingMinimumBits, minNodeRatioPerGroup, - resourceLimits, - clusterControllerStateGatherCount); + resourceLimits); } } } @@ -78,7 +73,6 @@ public class ClusterControllerConfig extends AbstractConfigProducer<ClusterContr private final Integer minSplitBits; private final Double minNodeRatioPerGroup; private final ResourceLimits resourceLimits; - private final int clusterControllerStateGatherCount; // TODO refactor; too many args private ClusterControllerConfig(AbstractConfigProducer<?> parent, @@ -91,8 +85,7 @@ public class ClusterControllerConfig extends AbstractConfigProducer<ClusterContr Double minStorageUpRatio, Integer minSplitBits, Double minNodeRatioPerGroup, - ResourceLimits resourceLimits, - int clusterControllerStateGatherCount) { + ResourceLimits resourceLimits) { super(parent, "fleetcontroller"); this.clusterName = clusterName; @@ -105,7 +98,6 @@ public class ClusterControllerConfig extends AbstractConfigProducer<ClusterContr this.minSplitBits = minSplitBits; this.minNodeRatioPerGroup = minNodeRatioPerGroup; this.resourceLimits = resourceLimits; - this.clusterControllerStateGatherCount = clusterControllerStateGatherCount; } @Override @@ -148,7 +140,6 @@ public class ClusterControllerConfig extends AbstractConfigProducer<ClusterContr builder.min_node_ratio_per_group(minNodeRatioPerGroup); } resourceLimits.getConfig(builder); - builder.state_gather_count(clusterControllerStateGatherCount); } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java index e777999cfbe..bf5770681ef 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java @@ -127,8 +127,7 @@ public class ContentCluster extends AbstractConfigProducer<AbstractConfigProduce .build(contentElement); c.clusterControllerConfig = new ClusterControllerConfig.Builder(clusterId, contentElement, - resourceLimits.getClusterControllerLimits(), - deployState.featureFlags()) + resourceLimits.getClusterControllerLimits()) .build(deployState, c, contentElement.getXml()); c.search = new ContentSearchCluster.Builder(documentDefinitions, globallyDistributedDocuments, diff --git a/config-model/src/test/java/com/yahoo/vespa/model/content/FleetControllerClusterTest.java b/config-model/src/test/java/com/yahoo/vespa/model/content/FleetControllerClusterTest.java index b449d5403b5..1e6847a47be 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/content/FleetControllerClusterTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/content/FleetControllerClusterTest.java @@ -27,8 +27,7 @@ public class FleetControllerClusterTest { new ClusterResourceLimits.Builder(false, featureFlags.resourceLimitDisk(), featureFlags.resourceLimitMemory()) - .build(clusterElement).getClusterControllerLimits(), - new TestProperties().featureFlags()) + .build(clusterElement).getClusterControllerLimits()) .build(root.getDeployState(), root, clusterElement.getXml()); } diff --git a/configdefinitions/src/vespa/fleetcontroller.def b/configdefinitions/src/vespa/fleetcontroller.def index af2d27df533..b2a3dd29be6 100644 --- a/configdefinitions/src/vespa/fleetcontroller.def +++ b/configdefinitions/src/vespa/fleetcontroller.def @@ -29,7 +29,7 @@ master_zookeeper_cooldown_period double default=60.0 ## If set to 1, only master will gather state. If set higher, others will ## also do so, prioritizing those fleetcontrollers likely to be the ones to ## take over if the master fails. -state_gather_count int default=2 +state_gather_count int default=1 ## Location of ZooKeeper servers zookeeper_server string restart diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java index d59b5da84da..1153017301f 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java @@ -223,7 +223,6 @@ public class ModelContextImpl implements ModelContext { private final int mbus_cpp_events_before_wakeup; private final int rpc_num_targets; private final int rpc_events_before_wakeup; - private final int clusterControllerStateGatherCount; private final boolean useRestrictedDataPlaneBindings; private final boolean computeCoverageFromTargetActiveDocs; @@ -285,7 +284,6 @@ public class ModelContextImpl implements ModelContext { this.rpc_events_before_wakeup = flagValue(source, appId, version, Flags.RPC_EVENTS_BEFORE_WAKEUP); this.queryDispatchPolicy = flagValue(source, appId, version, Flags.QUERY_DISPATCH_POLICY); this.phraseOptimization = flagValue(source, appId, version, Flags.PHRASE_OPTIMIZATION); - this.clusterControllerStateGatherCount = flagValue(source, appId, version, Flags.CLUSTER_CONTROLLER_STATE_GATHER_COUNT); this.useRestrictedDataPlaneBindings = flagValue(source, appId, version, Flags.RESTRICT_DATA_PLANE_BINDINGS); this.computeCoverageFromTargetActiveDocs = flagValue(source, appId, version, Flags.COMPUTE_COVERAGE_FROM_TARGET_ACTIVE_DOCS); } @@ -355,7 +353,6 @@ public class ModelContextImpl implements ModelContext { return defVal; } @Override public boolean useTwoPhaseDocumentGc() { return useTwoPhaseDocumentGc; } - @Override public int clusterControllerStateGatherCount() { return clusterControllerStateGatherCount; } @Override public boolean useRestrictedDataPlaneBindings() { return useRestrictedDataPlaneBindings; } @Override public boolean computeCoverageFromTargetActiveDocs() { return computeCoverageFromTargetActiveDocs; } diff --git a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java index 68f5bd485b0..d23e3f01e04 100644 --- a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java +++ b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java @@ -502,7 +502,7 @@ public class Flags { ZONE_ID, APPLICATION_ID); public static final UnboundIntFlag CLUSTER_CONTROLLER_STATE_GATHER_COUNT = defineIntFlag( - "cluster-controller-state-gather-count", 2, + "cluster-controller-state-gather-count", 1, List.of("hmusum"), "2022-09-05", "2022-11-01", "Count of how many cluster controllers should gather node state (range: [1, # of cluster controllers])", "Takes effect at redeployment", |