diff options
4 files changed, 18 insertions, 1 deletions
diff --git a/config-model-api/src/main/java/com/yahoo/config/model/api/Model.java b/config-model-api/src/main/java/com/yahoo/config/model/api/Model.java index 97ad67c5279..22a2ea5ba6f 100644 --- a/config-model-api/src/main/java/com/yahoo/config/model/api/Model.java +++ b/config-model-api/src/main/java/com/yahoo/config/model/api/Model.java @@ -1,6 +1,7 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.model.api; +import com.yahoo.component.Version; import com.yahoo.config.FileReference; import com.yahoo.config.provision.AllocatedHosts; import com.yahoo.vespa.config.ConfigKey; @@ -78,5 +79,10 @@ public interface Model { * or clients requesting config for those old models will not get config at all. */ default boolean skipOldConfigModels(Instant now) { return false; } + + /** + * Returns the version of this model + */ + default Version version() { return Version.emptyVersion; }; } 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 31746c39f80..bedf8057b41 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 @@ -3,6 +3,7 @@ package com.yahoo.vespa.model; import ai.vespa.rankingexpression.importer.configmodelview.ImportedMlModel; import com.yahoo.collections.Pair; +import com.yahoo.component.Version; import com.yahoo.config.ConfigBuilder; import com.yahoo.config.ConfigInstance; import com.yahoo.config.ConfigInstance.Builder; @@ -96,6 +97,8 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri private static final long serialVersionUID = 1L; public static final Logger log = Logger.getLogger(VespaModel.class.getPackage().toString()); + + private final Version version; private final ConfigModelRepo configModelRepo = new ConfigModelRepo(); private final AllocatedHosts allocatedHosts; @@ -155,6 +158,7 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri private VespaModel(ConfigModelRegistry configModelRegistry, DeployState deployState, boolean complete, FileDistributor fileDistributor) throws IOException, SAXException { super("vespamodel"); + this.version = deployState.getVespaVersion(); this.validationOverrides = deployState.validationOverrides(); configModelRegistry = new VespaConfigModelRegistry(configModelRegistry); VespaModelBuilder builder = new VespaDomBuilder(); @@ -292,6 +296,11 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri return validationOverrides.allows(ValidationId.skipOldConfigModels, now); } + @Override + public Version version() { + return version; + } + /** * Resolves config of the given type and config id, by first instantiating the correct {@link com.yahoo.config.ConfigInstance.Builder}, * calling {@link #getConfig(com.yahoo.config.ConfigInstance.Builder, String)}. The default values used will be those of the config diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelsBuilder.java b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelsBuilder.java index 34dcefe05bd..fab9c28d241 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelsBuilder.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ModelsBuilder.java @@ -131,7 +131,8 @@ public abstract class ModelsBuilder<MODELRESULT extends ModelResult> { } } } - log.log(LogLevel.DEBUG, "Done building models for " + applicationId); + log.log(LogLevel.DEBUG, "Done building models for " + applicationId + ". Built models for versions " + + allApplicationModels.stream().map(result -> result.getModel().version())) ; return allApplicationModels; } diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/metrics/ApplicationMetricsRetrieverTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/metrics/ApplicationMetricsRetrieverTest.java index dd86eb4fd0d..8a798570101 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/metrics/ApplicationMetricsRetrieverTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/metrics/ApplicationMetricsRetrieverTest.java @@ -1,5 +1,6 @@ package com.yahoo.vespa.config.server.metrics; +import com.yahoo.component.Version; import com.yahoo.config.FileReference; import com.yahoo.config.model.api.FileDistribution; import com.yahoo.config.model.api.HostInfo; |