aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/main
diff options
context:
space:
mode:
authorTor Brede Vekterli <vekterli@yahooinc.com>2022-05-16 13:20:56 +0200
committergjoranv <gv@verizonmedia.com>2022-06-08 11:45:22 +0200
commit4639be4f03d58a0b8df7b1ecb573e7d344a53ed5 (patch)
tree236d8b271e2e51c5e15df08bc19c4c97860ca16a /config-model/src/main
parent1e03a00cd6f69cf63d942885e97ff7582778c7f5 (diff)
Remove top-level <clients> element and LoadType concept
Load types have not been properly supported for some time, so remove the remaining API surfaces exposing them. Since load type config was the last remaining use of <clients> in services.xml, remove that one as well.
Diffstat (limited to 'config-model/src/main')
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java11
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/CommonConfigsProducer.java2
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/ConfigModelRepo.java10
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/VespaConfigModelRegistry.java2
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java5
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomClientsBuilder.java39
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomV20ClientsBuilder.java39
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/clients/Clients.java46
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/content/ContentNode.java3
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/search/SearchNode.java3
-rw-r--r--config-model/src/main/resources/schema/clients-v2.rnc31
-rw-r--r--config-model/src/main/resources/schema/clients.rnc6
-rw-r--r--config-model/src/main/resources/schema/services.rnc3
13 files changed, 2 insertions, 198 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java b/config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java
index 19805adc637..6a474b84161 100644
--- a/config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java
+++ b/config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java
@@ -22,7 +22,6 @@ import com.yahoo.documentapi.messagebus.protocol.DocumentProtocolPoliciesConfig;
import com.yahoo.messagebus.MessagebusConfig;
import com.yahoo.vespa.config.content.AllClustersBucketSpacesConfig;
import com.yahoo.vespa.config.content.DistributionConfig;
-import com.yahoo.vespa.config.content.LoadTypeConfig;
import com.yahoo.vespa.configmodel.producers.DocumentManager;
import com.yahoo.vespa.configmodel.producers.DocumentTypes;
import com.yahoo.vespa.documentmodel.DocumentModel;
@@ -33,7 +32,6 @@ import com.yahoo.vespa.model.PortsMeta;
import com.yahoo.vespa.model.Service;
import com.yahoo.vespa.model.VespaModel;
import com.yahoo.vespa.model.admin.Admin;
-import com.yahoo.vespa.model.clients.Clients;
import com.yahoo.vespa.model.content.cluster.ContentCluster;
import com.yahoo.vespa.model.filedistribution.FileDistributionConfigProducer;
import com.yahoo.vespa.model.routing.Routing;
@@ -213,15 +211,6 @@ public class ApplicationConfigProducerRoot extends AbstractConfigProducer<Abstra
}
@Override
- public void getConfig(LoadTypeConfig.Builder builder) {
- VespaModel model = (VespaModel) getRoot();
- Clients clients = model.getClients();
- if (clients != null) {
- clients.getConfig(builder);
- }
- }
-
- @Override
public void getConfig(ClusterListConfig.Builder builder) {
VespaModel model = (VespaModel) getRoot();
for (ContentCluster cluster : model.getContentClusters().values()) {
diff --git a/config-model/src/main/java/com/yahoo/config/model/CommonConfigsProducer.java b/config-model/src/main/java/com/yahoo/config/model/CommonConfigsProducer.java
index f8632a6b187..22e505b066c 100644
--- a/config-model/src/main/java/com/yahoo/config/model/CommonConfigsProducer.java
+++ b/config-model/src/main/java/com/yahoo/config/model/CommonConfigsProducer.java
@@ -4,7 +4,6 @@ package com.yahoo.config.model;
import com.yahoo.cloud.config.ApplicationIdConfig;
import com.yahoo.documentapi.messagebus.protocol.DocumentProtocolPoliciesConfig;
import com.yahoo.vespa.config.content.DistributionConfig;
-import com.yahoo.vespa.config.content.LoadTypeConfig;
import com.yahoo.cloud.config.log.LogdConfig;
import com.yahoo.cloud.config.SlobroksConfig;
import com.yahoo.cloud.config.ClusterListConfig;
@@ -30,7 +29,6 @@ public interface CommonConfigsProducer extends DocumentmanagerConfig.Producer,
LogdConfig.Producer,
SlobroksConfig.Producer,
ZookeepersConfig.Producer,
- LoadTypeConfig.Producer,
ClusterListConfig.Producer,
DistributionConfig.Producer,
AllClustersBucketSpacesConfig.Producer,
diff --git a/config-model/src/main/java/com/yahoo/config/model/ConfigModelRepo.java b/config-model/src/main/java/com/yahoo/config/model/ConfigModelRepo.java
index 8985dac91aa..01b66057038 100644
--- a/config-model/src/main/java/com/yahoo/config/model/ConfigModelRepo.java
+++ b/config-model/src/main/java/com/yahoo/config/model/ConfigModelRepo.java
@@ -16,7 +16,6 @@ import com.yahoo.path.Path;
import com.yahoo.text.XML;
import com.yahoo.vespa.model.VespaModel;
import com.yahoo.vespa.model.builder.VespaModelBuilder;
-import com.yahoo.vespa.model.clients.Clients;
import com.yahoo.vespa.model.content.Content;
import com.yahoo.vespa.model.routing.Routing;
import org.w3c.dom.Document;
@@ -244,15 +243,6 @@ public class ConfigModelRepo implements ConfigModelRepoAdder, Serializable, Iter
return modelsOfModelClass;
}
- public Clients getClients() {
- for (ConfigModel m : configModels) {
- if (m instanceof Clients) {
- return (Clients)m;
- }
- }
- return null;
- }
-
public Routing getRouting() {
for (ConfigModel m : configModels) {
if (m instanceof Routing) {
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/VespaConfigModelRegistry.java b/config-model/src/main/java/com/yahoo/vespa/model/VespaConfigModelRegistry.java
index 03750dbaa6e..e942079a085 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/VespaConfigModelRegistry.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/VespaConfigModelRegistry.java
@@ -5,7 +5,6 @@ import com.yahoo.config.model.ConfigModelRegistry;
import com.yahoo.config.model.admin.AdminModel;
import com.yahoo.config.model.builder.xml.ConfigModelBuilder;
import com.yahoo.config.model.builder.xml.ConfigModelId;
-import com.yahoo.vespa.model.builder.xml.dom.DomClientsBuilder;
import com.yahoo.vespa.model.builder.xml.dom.DomRoutingBuilder;
import com.yahoo.vespa.model.container.xml.ContainerModelBuilder;
import com.yahoo.vespa.model.container.xml.ContainerModelBuilder.Networking;
@@ -33,7 +32,6 @@ public class VespaConfigModelRegistry extends ConfigModelRegistry {
builderList.add(new AdminModel.BuilderV2());
builderList.add(new AdminModel.BuilderV4());
builderList.add(new DomRoutingBuilder());
- builderList.add(new DomClientsBuilder());
builderList.add(new Content.Builder());
builderList.add(new ContainerModelBuilder(false, Networking.enable));
builderList.add(new GenericServicesBuilder());
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 a919c19d754..a587d4cb0f9 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
@@ -45,7 +45,6 @@ import com.yahoo.vespa.model.InstanceResolver.PackagePrefix;
import com.yahoo.vespa.model.admin.Admin;
import com.yahoo.vespa.model.builder.VespaModelBuilder;
import com.yahoo.vespa.model.builder.xml.dom.VespaDomBuilder;
-import com.yahoo.vespa.model.clients.Clients;
import com.yahoo.vespa.model.container.ApplicationContainerCluster;
import com.yahoo.vespa.model.container.ContainerModel;
import com.yahoo.vespa.model.container.search.QueryProfiles;
@@ -619,10 +618,6 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri
id2producer.put(configId, descendant);
}
- public Clients getClients() {
- return configModelRepo.getClients();
- }
-
public List<SearchCluster> getSearchClusters() {
return Content.getSearchClusters(configModelRepo());
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomClientsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomClientsBuilder.java
deleted file mode 100644
index fe22f818e32..00000000000
--- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomClientsBuilder.java
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.model.builder.xml.dom;
-
-import com.yahoo.config.model.ConfigModelContext;
-import com.yahoo.config.model.builder.xml.ConfigModelId;
-import com.yahoo.vespa.model.clients.Clients;
-import org.w3c.dom.Element;
-
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * Builds the Clients plugin
- *
- * @author hmusum
- */
-public class DomClientsBuilder extends LegacyConfigModelBuilder<Clients> {
-
- public DomClientsBuilder() {
- super(Clients.class);
- }
-
- @Override
- public List<ConfigModelId> handlesElements() {
- return Arrays.asList(ConfigModelId.fromNameAndVersion("clients", "2.0"));
- }
-
- @Override
- public void doBuild(Clients clients, Element clientsE, ConfigModelContext modelContext) {
- String version = clientsE.getAttribute("version");
- if (version.startsWith("2.")) {
- DomV20ClientsBuilder parser = new DomV20ClientsBuilder(clients, version);
- parser.build(clientsE);
- } else {
- throw new IllegalArgumentException("Version '" + version + "' of 'clients' not supported.");
- }
- }
-
-}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomV20ClientsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomV20ClientsBuilder.java
deleted file mode 100644
index 040291cfa71..00000000000
--- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomV20ClientsBuilder.java
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.model.builder.xml.dom;
-
-import com.yahoo.text.XML;
-import com.yahoo.vespa.model.clients.Clients;
-import org.w3c.dom.Element;
-import org.w3c.dom.NodeList;
-
-/**
- * Builds the Clients plugin
- *
- * @author vegardh
- */
-public class DomV20ClientsBuilder {
-
- // The parent docproc plugin to register data with.
- private final Clients clients;
-
- DomV20ClientsBuilder(Clients clients, String version) {
- if ( ! version.equals("2.0"))
- throw new IllegalArgumentException("Version '" + version + "' of 'clients' not supported.");
- this.clients = clients;
- }
-
- public void build(Element spec) {
- NodeList children = spec.getElementsByTagName("load-types");
- for (int i = 0; i < children.getLength(); i++) {
- createLoadTypes((Element) children.item(i), clients);
- }
- }
-
- private void createLoadTypes(Element element, Clients clients) {
- for (Element e : XML.getChildren(element, "type")) {
- String priority = e.getAttribute("default-priority");
- clients.getLoadTypes().addType(e.getAttribute("name"), priority.length() > 0 ? priority : null);
- }
- }
-
-}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/clients/Clients.java b/config-model/src/main/java/com/yahoo/vespa/model/clients/Clients.java
deleted file mode 100644
index 8b8b9e5f40d..00000000000
--- a/config-model/src/main/java/com/yahoo/vespa/model/clients/Clients.java
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.model.clients;
-
-import com.yahoo.vespa.config.content.LoadTypeConfig;
-import com.yahoo.config.model.ConfigModel;
-import com.yahoo.config.model.ConfigModelContext;
-import com.yahoo.documentapi.messagebus.loadtypes.LoadType;
-import com.yahoo.documentapi.messagebus.loadtypes.LoadTypeSet;
-
-/**
- * This is the clients plugin for the Vespa model. It is responsible for creating
- * all clients services.
- *
- * @author Gunnar Gauslaa Bergem
- */
-@SuppressWarnings("removal") // TODO: Remove on Vespa 8
-public class Clients extends ConfigModel {
-
- private static final long serialVersionUID = 1L;
- private LoadTypeSet loadTypes = new LoadTypeSet();
-
- public Clients(ConfigModelContext modelContext) {
- super(modelContext);
- }
-
- public LoadTypeSet getLoadTypes() {
- return loadTypes;
- }
-
- public void getConfig(LoadTypeConfig.Builder builder) {
- for (LoadType t : loadTypes.getNameMap().values()) {
- if (t != LoadType.DEFAULT) {
- builder.type(getLoadTypeConfig(t));
- }
- }
- }
-
- private LoadTypeConfig.Type.Builder getLoadTypeConfig(LoadType loadType) {
- LoadTypeConfig.Type.Builder builder = new LoadTypeConfig.Type.Builder();
- builder.name(loadType.getName());
- builder.id(loadType.getId());
- builder.priority(loadType.getPriority().toString());
- return builder;
- }
-
-}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/ContentNode.java b/config-model/src/main/java/com/yahoo/vespa/model/content/ContentNode.java
index d32fa8f2902..d6ed6f4f7dd 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/content/ContentNode.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/content/ContentNode.java
@@ -3,7 +3,6 @@ package com.yahoo.vespa.model.content;
import com.yahoo.config.model.api.ModelContext;
import com.yahoo.metrics.MetricsmanagerConfig;
-import com.yahoo.vespa.config.content.LoadTypeConfig;
import com.yahoo.vespa.config.content.core.StorCommunicationmanagerConfig;
import com.yahoo.vespa.config.content.core.StorServerConfig;
import com.yahoo.vespa.config.content.core.StorStatusConfig;
@@ -16,7 +15,7 @@ import com.yahoo.vespa.model.application.validation.RestartConfigs;
* Common class for config producers for storage and distributor nodes.
*/
@RestartConfigs({StorCommunicationmanagerConfig.class, StorStatusConfig.class,
- StorServerConfig.class, LoadTypeConfig.class, MetricsmanagerConfig.class})
+ StorServerConfig.class, MetricsmanagerConfig.class})
public abstract class ContentNode extends AbstractService
implements StorCommunicationmanagerConfig.Producer, StorStatusConfig.Producer, StorServerConfig.Producer {
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/SearchNode.java b/config-model/src/main/java/com/yahoo/vespa/model/search/SearchNode.java
index e7c0968f99e..3461cab1201 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/search/SearchNode.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/search/SearchNode.java
@@ -7,7 +7,6 @@ import com.yahoo.config.model.producer.AbstractConfigProducer;
import com.yahoo.config.provision.NodeResources;
import com.yahoo.metrics.MetricsmanagerConfig;
import com.yahoo.searchlib.TranslogserverConfig;
-import com.yahoo.vespa.config.content.LoadTypeConfig;
import com.yahoo.vespa.config.content.StorFilestorConfig;
import com.yahoo.vespa.config.content.core.StorBucketmoverConfig;
import com.yahoo.vespa.config.content.core.StorCommunicationmanagerConfig;
@@ -44,7 +43,7 @@ import static com.yahoo.vespa.defaults.Defaults.getDefaults;
@RestartConfigs({ProtonConfig.class, MetricsmanagerConfig.class, TranslogserverConfig.class,
StorFilestorConfig.class, StorBucketmoverConfig.class,
StorCommunicationmanagerConfig.class, StorStatusConfig.class,
- StorServerConfig.class, LoadTypeConfig.class})
+ StorServerConfig.class})
public class SearchNode extends AbstractService implements
SearchInterface,
ProtonConfig.Producer,
diff --git a/config-model/src/main/resources/schema/clients-v2.rnc b/config-model/src/main/resources/schema/clients-v2.rnc
deleted file mode 100644
index 5a9353321c8..00000000000
--- a/config-model/src/main/resources/schema/clients-v2.rnc
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-Clients20 =
- attribute version { "2.0" } &
- LoadTypes?
-
-LoadTypes = element load-types {
- element type {
- attribute name { text } &
- attribute default-priority { text }?
- }*
-}
-
-FeederOptions20 = element feederoptions {
- FeederOptionsOpts20 &
- DocProcChain?
-}
-
-FeederOptionsOpts20 = element abortondocumenterror { xsd:boolean }? &
- element retryenabled { text }? &
- element route { text }? &
- element maxpendingdocs { xsd:positiveInteger }? &
- element maxpendingbytes { xsd:positiveInteger }? &
- element retrydelay { xsd:double { minInclusive = "0.0" } }? &
- element timeout { xsd:double { minInclusive = "0.0" } }? &
- element tracelevel { xsd:positiveInteger }? &
- element mbusport { xsd:positiveInteger }?
-
-
-DocProcChain = element docprocchain {
- text
-}
diff --git a/config-model/src/main/resources/schema/clients.rnc b/config-model/src/main/resources/schema/clients.rnc
deleted file mode 100644
index 1e1dffc90b9..00000000000
--- a/config-model/src/main/resources/schema/clients.rnc
+++ /dev/null
@@ -1,6 +0,0 @@
-# Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-include "clients-v2.rnc"
-
-Clients = element clients {
- Clients20
-}
diff --git a/config-model/src/main/resources/schema/services.rnc b/config-model/src/main/resources/schema/services.rnc
index 3a8ffe30563..e8bb1c0c6c2 100644
--- a/config-model/src/main/resources/schema/services.rnc
+++ b/config-model/src/main/resources/schema/services.rnc
@@ -1,7 +1,6 @@
# Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
include "common.rnc"
include "admin.rnc"
-include "clients.rnc"
include "content.rnc"
include "docproc.rnc"
include "routing.rnc"
@@ -15,14 +14,12 @@ start = element services {
GenericCluster* &
GenericConfig* &
Admin? &
- Clients? &
Content* &
ContainerCluster* &
Routing?
}
| GenericCluster
| Admin
-| Clients
| Content
| ContainerCluster