summaryrefslogtreecommitdiffstats
path: root/config-model/src
diff options
context:
space:
mode:
authorHarald Musum <musum@yahoo-inc.com>2017-02-20 20:58:44 +0100
committerHarald Musum <musum@yahoo-inc.com>2017-02-20 20:58:44 +0100
commit19cf9757b2230bbde1e0fcbd6f45a7d410062ed0 (patch)
tree0aa47fb67eceb3260342195debacd1f85db0295c /config-model/src
parenta27c0005613e361f8180c08d6d3acb47127e8716 (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/src')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/AbstractService.java11
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/HostResource.java16
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;