diff options
author | Jon Bratseth <bratseth@gmail.com> | 2021-02-15 13:07:38 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2021-02-15 13:07:38 +0100 |
commit | cbba48f3b0751ba0ec24e536b3b1c97dcf88f630 (patch) | |
tree | f738d44cde8c9c10a84743f873114325724f59c3 /config-model | |
parent | fe7d8249ae5d07401d96868f818726e09b9238c7 (diff) |
Non-functional changes
Diffstat (limited to 'config-model')
11 files changed, 32 insertions, 29 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java b/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java index 046eef65eb5..8befbb48016 100644 --- a/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java +++ b/config-model/src/main/java/com/yahoo/config/model/deploy/DeployState.java @@ -156,10 +156,11 @@ public class DeployState implements ConfigDefinitionStore { } public static HostProvisioner getDefaultModelHostProvisioner(ApplicationPackage applicationPackage) { - if (applicationPackage.getHosts() == null) { - return new SingleNodeProvisioner(); - } else { - return new HostsXmlProvisioner(applicationPackage.getHosts()); + try (Reader hostsReader = applicationPackage.getHosts()) { + return hostsReader == null ? new SingleNodeProvisioner() : new HostsXmlProvisioner(hostsReader); + } + catch (IOException e) { + throw new IllegalStateException("Could not read hosts.xml", e); } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/AbstractService.java b/config-model/src/main/java/com/yahoo/vespa/model/AbstractService.java index 04660f2b990..6e16b1a120e 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/AbstractService.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/AbstractService.java @@ -194,16 +194,14 @@ public abstract class AbstractService extends AbstractConfigProducer<AbstractCon } /** - * Gets the ports metainfo object. The service implementation - * must populate this object in the constructor. + * Gets the ports metainfo object. The service implementation must populate this object in the constructor. */ public PortsMeta getPortsMeta() { return portsMeta; } /** - * Computes and returns the i'th port for this service, based on - * this Service's baseport. + * Computes and returns the i'th port for this service, based on this Service's baseport. * * @param i the offset from 'basePort' of the port to return * @return the i'th port relative to the base port. diff --git a/config-model/src/main/java/com/yahoo/vespa/model/HostResource.java b/config-model/src/main/java/com/yahoo/vespa/model/HostResource.java index 27fb0f444ef..78d9dd473b3 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/HostResource.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/HostResource.java @@ -10,6 +10,7 @@ import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Optional; import java.util.stream.Collectors; @@ -67,9 +68,11 @@ public class HostResource implements Comparable<HostResource> { List<Integer> allocateService(DeployLogger deployLogger, AbstractService service, int wantedPort) { ports().useLogger(deployLogger); List<Integer> ports = hostPorts.allocatePorts(service, wantedPort); - assert (getService(service.getServiceName()) == null) : - ("There is already a service with name '" + service.getServiceName() + "' registered on " + this + - ". Most likely a programming error - all service classes must have unique names, even in different packages!"); + if (getService(service.getServiceName()) != null) + throw new IllegalStateException("There is already a service with name '" + service.getServiceName() + + "' registered on " + this + ". " + + "Most likely a programming error - " + + "all service classes must have unique names, even in different packages!"); services.put(service.getServiceName(), service); return ports; diff --git a/config-model/src/main/java/com/yahoo/vespa/model/PortAllocBridge.java b/config-model/src/main/java/com/yahoo/vespa/model/PortAllocBridge.java index ac518b3a7d9..87db852e682 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/PortAllocBridge.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/PortAllocBridge.java @@ -10,13 +10,14 @@ import java.util.List; * This class acts as a bridge between NetworkPortRequestor and HostPorts * for a single call to allocatePorts(), gathering the resulting port * allocations in a list of integers. + * * @author arnej */ public class PortAllocBridge { - private HostPorts host; - private NetworkPortRequestor service; - private List<Integer> ports = new ArrayList<>(); + private final HostPorts host; + private final NetworkPortRequestor service; + private final List<Integer> ports = new ArrayList<>(); public PortAllocBridge(HostPorts host, NetworkPortRequestor service) { this.host = host; diff --git a/config-model/src/main/java/com/yahoo/vespa/model/PortFinder.java b/config-model/src/main/java/com/yahoo/vespa/model/PortFinder.java index 3d5cbcd0e6e..968f8399e4b 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/PortFinder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/PortFinder.java @@ -41,7 +41,7 @@ public class PortFinder { String key = request.key(); if (byKeys.containsKey(key)) { int port = byKeys.get(key).port; - log.log(Level.FINE, "Re-using port "+port+" for allocation "+request+" on "+host); + log.log(Level.FINE, "Re-using port "+port+" for allocation " + request + " on " + host); return port; } int port = request.port; 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 660c47d037d..44bade4cd84 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 @@ -418,7 +418,6 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri * @param configId the config id for the config client * @return the builder if a producer was found, and it did apply config, null otherwise */ - @SuppressWarnings("unchecked") @Override public ConfigInstance.Builder getConfig(ConfigInstance.Builder builder, String configId) { checkId(configId); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminV2Builder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminV2Builder.java index 3879df52390..e37f558c2ce 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminV2Builder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminV2Builder.java @@ -134,7 +134,7 @@ public class DomAdminV2Builder extends DomAdminBuilderBase { return cfgs; } - private List<Slobrok> getSlobroks(DeployState deployState, AbstractConfigProducer parent, Element slobroksE) { + private List<Slobrok> getSlobroks(DeployState deployState, AbstractConfigProducer<?> parent, Element slobroksE) { List<Slobrok> slobs = new ArrayList<>(); if (slobroksE != null) { slobs = getExplicitSlobrokSetup(deployState, parent, slobroksE); @@ -142,16 +142,12 @@ public class DomAdminV2Builder extends DomAdminBuilderBase { return slobs; } - private List<Slobrok> getExplicitSlobrokSetup(DeployState deployState, AbstractConfigProducer parent, Element slobroksE) { - List<Slobrok> slobs = new ArrayList<>(); - List<Element> slobsE = XML.getChildren(slobroksE, "slobrok"); + private List<Slobrok> getExplicitSlobrokSetup(DeployState deployState, AbstractConfigProducer<?> parent, Element slobroksE) { + List<Slobrok> slobroks = new ArrayList<>(); int i = 0; - for (Element e : slobsE) { - Slobrok slob = new SlobrokBuilder(i).build(deployState, parent, e); - slobs.add(slob); - i++; - } - return slobs; + for (Element e : XML.getChildren(slobroksE, "slobrok")) + slobroks.add(new SlobrokBuilder(i++).build(deployState, parent, e)); + return slobroks; } private static class LogserverBuilder extends DomConfigProducerBuilder<Logserver> { @@ -184,6 +180,7 @@ public class DomAdminV2Builder extends DomAdminBuilderBase { } private static class SlobrokBuilder extends DomConfigProducerBuilder<Slobrok> { + int i; public SlobrokBuilder(int i) { @@ -194,6 +191,7 @@ public class DomAdminV2Builder extends DomAdminBuilderBase { protected Slobrok doBuild(DeployState deployState, AbstractConfigProducer parent, Element spec) { return new Slobrok(parent, i); } + } private static class ClusterControllerBuilder extends DomConfigProducerBuilder<ClusterControllerContainer> { 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 705d2dc668d..37a2ef224fc 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 @@ -14,8 +14,6 @@ import com.yahoo.vespa.model.application.validation.RestartConfigs; /** * Common class for config producers for storage and distributor nodes. - * - * TODO: Author */ @RestartConfigs({StorCommunicationmanagerConfig.class, StorStatusConfig.class, StorServerConfig.class, LoadTypeConfig.class, MetricsmanagerConfig.class}) diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java index 43f0f0f450d..0de111e459e 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java @@ -266,7 +266,7 @@ public class ContentSearchCluster extends AbstractConfigProducer<SearchCluster> } public void addSearchNode(DeployState deployState, ContentNode node, StorageGroup parentGroup, ModelElement element) { - AbstractConfigProducer parent = hasIndexedCluster() ? getIndexed() : this; + AbstractConfigProducer<?> parent = hasIndexedCluster() ? getIndexed() : this; NodeSpec spec = getNextSearchNodeSpec(parentGroup); SearchNode searchNode; diff --git a/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java b/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java index 37619d3afc6..5a71f83e468 100644 --- a/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java +++ b/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java @@ -14,6 +14,7 @@ import com.yahoo.config.provision.RegionName; import com.yahoo.config.provision.Zone; import com.yahoo.container.core.ApplicationMetadataConfig; import com.yahoo.search.config.QrStartConfig; +import com.yahoo.vespa.config.content.core.StorStatusConfig; import com.yahoo.vespa.config.search.core.ProtonConfig; import com.yahoo.vespa.model.HostResource; import com.yahoo.vespa.model.HostSystem; @@ -1509,6 +1510,7 @@ public class ModelProvisioningTest { assertEquals("Nodes in container cluster", 1, model.getContainerClusters().get("container1").getContainers().size()); assertEquals("Nodes in content cluster (downscaled)", 1, model.getContentClusters().get("content").getRootGroup().getNodes().size()); + model.getConfig(new StorStatusConfig.Builder(), "default"); } @Test diff --git a/config-model/src/test/java/com/yahoo/vespa/model/test/VespaModelTester.java b/config-model/src/test/java/com/yahoo/vespa/model/test/VespaModelTester.java index 7484095c5bc..787bcca83f1 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/test/VespaModelTester.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/test/VespaModelTester.java @@ -6,12 +6,14 @@ import com.yahoo.config.application.api.ApplicationPackage; import com.yahoo.config.model.ConfigModelRegistry; import com.yahoo.config.model.NullConfigModelRegistry; import com.yahoo.config.model.api.HostProvisioner; +import com.yahoo.config.model.api.Provisioned; import com.yahoo.config.model.deploy.DeployState; import com.yahoo.config.model.deploy.TestProperties; import com.yahoo.config.model.provision.Host; import com.yahoo.config.model.provision.Hosts; import com.yahoo.config.model.provision.InMemoryProvisioner; import com.yahoo.config.model.provision.SingleNodeProvisioner; +import com.yahoo.config.provision.AllocatedHosts; import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.Flavor; import com.yahoo.config.provision.NodeResources; @@ -141,6 +143,7 @@ public class VespaModelTester { false, startIndexForClusters, retiredHostNames) : new SingleNodeProvisioner(); + System.out.println("Created provisioner " + provisioner); TestProperties properties = new TestProperties() .setMultitenant(true) |