summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2020-11-30 21:12:22 +0100
committerGitHub <noreply@github.com>2020-11-30 21:12:22 +0100
commitc08d2b464087dca421f65ad4a51464c3120510d3 (patch)
tree1c8766bbcfed323257a4acd6f90aa9ec854dd4d6 /config-model
parent1d5e07a044bff2aef764cfee0de10802c376e4b7 (diff)
Revert "Bratseth/apply on restart take 7"
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/InstanceResolver.java5
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java15
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/Container.java5
-rwxr-xr-xconfig-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java1
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/RestartChangesDefersConfigChangesTest.java10
5 files changed, 9 insertions, 27 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/InstanceResolver.java b/config-model/src/main/java/com/yahoo/vespa/model/InstanceResolver.java
index 11e97bc8a95..a8404b076d4 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/InstanceResolver.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/InstanceResolver.java
@@ -31,8 +31,7 @@ import java.util.Map;
*
* @author Vegard Havdal
*/
-// TODO: Most of this has been copied to ConfigInstance.Builder.buildInstance() and can be removed from here
-// when Model.getConfig is removed
+// TODO This functionality should be on VespaModel itself, but we don't have a way right now to apply a config override to a ConfigInstance.Builder
class InstanceResolver {
private static final java.util.logging.Logger log = java.util.logging.Logger.getLogger(InstanceResolver.class.getName());
@@ -139,6 +138,7 @@ class InstanceResolver {
return packagePrefix.value + cKey.getNamespace();
}
+
enum PackagePrefix {
COM_YAHOO("com.yahoo."),
NONE("");
@@ -148,5 +148,4 @@ class InstanceResolver {
this.value = value;
}
}
-
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java b/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java
index 9fdaaff9d5e..2ffc24239f9 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java
@@ -313,7 +313,6 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri
* @param configId the config id
* @return a config instance of the given type
*/
- @Override
public <CONFIGTYPE extends ConfigInstance> CONFIGTYPE getConfig(Class<CONFIGTYPE> clazz, String configId) {
try {
ConfigInstance.Builder builder = newBuilder(clazz);
@@ -394,7 +393,6 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri
* @param targetDef The config definition to use for the schema
* @return The payload as a list of strings
*/
- @Deprecated // TODO: Remove after December 2020
@Override
public ConfigPayload getConfig(ConfigKey<?> configKey, com.yahoo.vespa.config.buildergen.ConfigDefinition targetDef) {
Objects.requireNonNull(targetDef, "config definition cannot be null");
@@ -407,19 +405,6 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri
}
/**
- * Resolve config for a given key and config definition
- *
- * @param configKey the key to resolve.
- * @param targetDef the config definition to use for the schema
- * @return the resolved config instance
- */
- @Override
- public ConfigInstance.Builder getConfigInstance(ConfigKey<?> configKey, com.yahoo.vespa.config.buildergen.ConfigDefinition targetDef) {
- Objects.requireNonNull(targetDef, "config definition cannot be null");
- return resolveToBuilder(configKey);
- }
-
- /**
* Resolves the given config key into a correctly typed ConfigBuilder
* and fills in the config from this model.
*
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java b/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java
index 5e95403313c..6e470b24f9f 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java
@@ -306,7 +306,9 @@ public abstract class Container extends AbstractService implements
.port(getRpcPort())
.slobrokId(serviceSlobrokId()))
.filedistributor(filedistributorConfig())
- .discriminator((clusterName != null ? clusterName + "." : "" ) + name);
+ .discriminator((clusterName != null ? clusterName + "." : "" ) + name)
+ .restartOnDeploy(owner != null && owner.getDeferChangesUntilRestart());
+
}
/** Returns the jvm args set explicitly for this node */
@@ -328,7 +330,6 @@ public abstract class Container extends AbstractService implements
@Override
public void getConfig(ComponentsConfig.Builder builder) {
- builder.setApplyOnRestart(owner.getDeferChangesUntilRestart()); // Sufficient to set on one config
builder.components.addAll(ComponentsConfigGenerator.generate(allEnabledComponents()));
}
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 c0fd4eb7b05..813247d1ae9 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
@@ -413,7 +413,6 @@ public abstract class ContainerCluster<CONTAINER extends Container>
@Override
public void getConfig(ComponentsConfig.Builder builder) {
- builder.setApplyOnRestart(getDeferChangesUntilRestart()); // Sufficient to set on one config
builder.components.addAll(ComponentsConfigGenerator.generate(getAllComponents()));
builder.components(new ComponentsConfig.Components.Builder().id("com.yahoo.container.core.config.HandlersConfigurerDi$RegistriesHack"));
}
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/RestartChangesDefersConfigChangesTest.java b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/RestartChangesDefersConfigChangesTest.java
index fda4c54c154..35aa9a3c988 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/RestartChangesDefersConfigChangesTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/RestartChangesDefersConfigChangesTest.java
@@ -1,11 +1,9 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.model.application.validation.change;
-import com.yahoo.cloud.config.log.LogdConfig;
import com.yahoo.config.model.provision.InMemoryProvisioner;
import com.yahoo.config.provision.Environment;
import com.yahoo.config.provision.NodeResources;
-import com.yahoo.container.ComponentsConfig;
import com.yahoo.container.QrConfig;
import com.yahoo.vespa.model.VespaModel;
import com.yahoo.vespa.model.application.validation.ValidationTester;
@@ -28,15 +26,15 @@ public class RestartChangesDefersConfigChangesTest {
// Change node count - no restart
VespaModel gen2 = tester.deploy(gen1, getServices(4, 3), Environment.prod, null).getFirst();
- var config2 = new ComponentsConfig.Builder();
+ var config2 = new QrConfig.Builder();
gen2.getContainerClusters().get("default").getContainers().get(0).getConfig(config2);
- assertFalse(config2.getApplyOnRestart());
+ assertFalse(config2.build().restartOnDeploy());
// Change memory amount - requires restart
VespaModel gen3 = tester.deploy(gen2, getServices(4, 2), Environment.prod, null).getFirst();
- var config3 = new ComponentsConfig.Builder();
+ var config3 = new QrConfig.Builder();
gen3.getContainerClusters().get("default").getContainers().get(0).getConfig(config3);
- assertTrue(config3.getApplyOnRestart());
+ assertTrue(config3.build().restartOnDeploy());
}
private static String getServices(int nodes, int memory) {