diff options
author | Harald Musum <musum@yahoo-inc.com> | 2017-02-20 20:58:44 +0100 |
---|---|---|
committer | Harald Musum <musum@yahoo-inc.com> | 2017-02-20 20:58:44 +0100 |
commit | 19cf9757b2230bbde1e0fcbd6f45a7d410062ed0 (patch) | |
tree | 0aa47fb67eceb3260342195debacd1f85db0295c /config-model | |
parent | a27c0005613e361f8180c08d6d3acb47127e8716 (diff) |
Remove support for changing base port after a service has been initialized
* Nasty hasck that was used by e.g. LocalApplication earlier,
not in use anymore
Diffstat (limited to 'config-model')
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/AbstractService.java | 11 | ||||
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/HostResource.java | 16 |
2 files changed, 1 insertions, 26 deletions
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 0d41fe34d6b..bda79ee2356 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 @@ -467,17 +467,6 @@ public abstract class AbstractService extends AbstractConfigProducer<AbstractCon * WARNING: should only be called before initService(), otherwise call at own risk! */ public void setBasePort(int wantedPort) { - if (initialized && getPortCount() > 0) { - // This means initServices has been called already, so you are being nasty, trying to change ports! - // Try to allocate the new ports if they are available. - if (!hostResource.isPortRangeAvailable(wantedPort, 1) || - (requiresConsecutivePorts() && ! hostResource.isPortRangeAvailable(wantedPort, getPortCount()))) - throw new IllegalStateException("For service with id " + getConfigId() + ": setBasePort is called after initService, and ports are not available."); - - hostResource.deallocatePorts(this); - ports = hostResource.allocatePorts(this, getInstanceWantedPort(wantedPort)); - } - this.basePort = wantedPort; } 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 3cad2b7c2ef..eedda268c4f 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 @@ -2,11 +2,9 @@ package com.yahoo.vespa.model; import com.yahoo.config.model.api.HostInfo; -import com.yahoo.config.model.api.ServiceInfo; import java.util.*; import java.util.logging.Level; -import java.util.stream.Collector; import java.util.stream.Collectors; /** @@ -98,8 +96,7 @@ public class HostResource implements Comparable<HostResource> { return ports; } - // TODO: make private when LocalApplication and all model services has stopped reallocating ports _after_ allocateServices has been called - List<Integer> allocatePorts(AbstractService service, int wantedPort) { + private List<Integer> allocatePorts(AbstractService service, int wantedPort) { List<Integer> ports = new ArrayList<>(); if (service.getPortCount() < 1) return ports; @@ -128,17 +125,6 @@ public class HostResource implements Comparable<HostResource> { return ports; } - // TODO: this is a hack to allow calling AbstractService.setBasePort _after_ the services has been initialized, - // i.e. modifying the baseport. Done by e.g. LocalApplication. Try to remove usage of this method! - void deallocatePorts(AbstractService service) { - for (Iterator<Map.Entry<Integer,Service>> i=portDB.entrySet().iterator(); i.hasNext();) { - Map.Entry<Integer, Service> e = i.next(); - Service s = e.getValue(); - if (s.equals(service)) - i.remove(); - } - } - private boolean canUseWantedPort(AbstractService service, int wantedPort, int serviceBasePort) { for (int i = 0; i < service.getPortCount(); i++) { int port = wantedPort + i; |