aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository/src
diff options
context:
space:
mode:
authorHarald Musum <musum@oath.com>2018-06-29 12:13:13 +0200
committerHarald Musum <musum@oath.com>2018-06-29 12:13:13 +0200
commit246b5345b7697c5e60cd5df968796da510de2409 (patch)
tree8a181beb9ac03c91de89d09a68da952b08fcf2d8 /node-repository/src
parent5ee5a24550ff5d2c5349c08cfab90a7a124b3b80 (diff)
Remove support for default flavor override per application
All overrides have been removed, not used anymore
Diffstat (limited to 'node-repository/src')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java5
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/persistence/CuratorDatabaseClient.java13
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java6
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java3
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/NodeRepositoryTest.java25
5 files changed, 3 insertions, 49 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java
index 1383a0a8cf3..567ba4708f7 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/NodeRepository.java
@@ -245,11 +245,6 @@ public class NodeRepository extends AbstractComponent {
}
}
- /** Get default flavor override for an application, if present. */
- public Optional<String> getDefaultFlavorOverride(ApplicationId applicationId) {
- return db.getDefaultFlavorForApplication(applicationId);
- }
-
public NodeFlavors getAvailableFlavors() {
return flavors;
}
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/persistence/CuratorDatabaseClient.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/persistence/CuratorDatabaseClient.java
index f87c10b9edf..f66cec0706a 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/persistence/CuratorDatabaseClient.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/persistence/CuratorDatabaseClient.java
@@ -19,7 +19,6 @@ import com.yahoo.vespa.hosted.provision.Node;
import com.yahoo.vespa.hosted.provision.node.Agent;
import com.yahoo.vespa.hosted.provision.node.Status;
-import java.nio.charset.StandardCharsets;
import java.time.Clock;
import java.time.Duration;
import java.util.ArrayList;
@@ -327,18 +326,6 @@ public class CuratorDatabaseClient {
return curatorDatabase.lock(path, timeout);
}
- /**
- * Returns a default flavor specific for an application, or empty if not available.
- */
- public Optional<String> getDefaultFlavorForApplication(ApplicationId applicationId) {
- Optional<byte[]> utf8DefaultFlavor = curatorDatabase.getData(defaultFlavorPath(applicationId));
- return utf8DefaultFlavor.map((flavor) -> new String(flavor, StandardCharsets.UTF_8));
- }
-
- private Path defaultFlavorPath(ApplicationId applicationId) {
- return root.append("defaultFlavor").append(applicationId.serializedForm());
- }
-
public Set<String> readInactiveJobs() {
try {
byte[] data = curatorDatabase.getData(inactiveJobsPath()).get();
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java
index 4b26769b1fb..efa1cd3745d 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java
@@ -40,16 +40,14 @@ public class CapacityPolicies {
}
}
- public Flavor decideFlavor(Capacity requestedCapacity, ClusterSpec cluster, Optional<String> defaultFlavorOverride) {
+ public Flavor decideFlavor(Capacity requestedCapacity, ClusterSpec cluster) {
// for now, always use the requested flavor if a docker flavor is requested
Optional<String> requestedFlavor = requestedCapacity.flavor();
if (requestedFlavor.isPresent() &&
flavors.getFlavorOrThrow(requestedFlavor.get()).getType() == Flavor.Type.DOCKER_CONTAINER)
return flavors.getFlavorOrThrow(requestedFlavor.get());
- String defaultFlavorName = defaultFlavorOverride.isPresent() ?
- defaultFlavorOverride.get() : zone.defaultFlavor(cluster.type());
-
+ String defaultFlavorName = zone.defaultFlavor(cluster.type());
switch(zone.environment()) {
case dev : case test : case staging : return flavors.getFlavorOrThrow(defaultFlavorName);
default : return flavors.getFlavorOrThrow(requestedFlavor.orElse(defaultFlavorName));
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java
index 833418b6f1f..0ef5c03e543 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/NodeRepositoryProvisioner.java
@@ -85,8 +85,7 @@ public class NodeRepositoryProvisioner implements Provisioner {
if (zone.environment().isManuallyDeployed() && nodeCount < requestedCapacity.nodeCount())
logger.log(Level.INFO, "Requested " + requestedCapacity.nodeCount() + " nodes for " + cluster +
", downscaling to " + nodeCount + " nodes in " + zone.environment());
- Optional<String> defaultFlavorOverride = nodeRepository.getDefaultFlavorOverride(application);
- Flavor flavor = capacityPolicies.decideFlavor(requestedCapacity, cluster, defaultFlavorOverride);
+ Flavor flavor = capacityPolicies.decideFlavor(requestedCapacity, cluster);
log.log(LogLevel.DEBUG, () -> "Decided flavor for requested tenant nodes: " + flavor);
boolean exclusive = capacityPolicies.decideExclusivity(cluster.isExclusive());
effectiveGroups = wantedGroups > nodeCount ? nodeCount : wantedGroups; // cannot have more groups than nodes
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/NodeRepositoryTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/NodeRepositoryTest.java
index b33d776ac08..aaeb4316c57 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/NodeRepositoryTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/NodeRepositoryTest.java
@@ -1,19 +1,12 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.hosted.provision;
-import com.yahoo.config.provision.ApplicationId;
-import com.yahoo.config.provision.ApplicationName;
-import com.yahoo.config.provision.InstanceName;
import com.yahoo.config.provision.NodeType;
-import com.yahoo.config.provision.TenantName;
-import com.yahoo.path.Path;
import com.yahoo.vespa.hosted.provision.node.Agent;
import org.junit.Test;
-import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.HashSet;
-import java.util.Optional;
import java.util.Set;
import java.util.function.Predicate;
import java.util.stream.Collectors;
@@ -47,24 +40,6 @@ public class NodeRepositoryTest {
}
@Test
- public void applicationDefaultFlavor() {
- NodeRepositoryTester tester = new NodeRepositoryTester();
-
- ApplicationId application = ApplicationId.from(TenantName.from("a"), ApplicationName.from("b"), InstanceName.from("c"));
-
- Path path = Path.fromString("/provision/v1/defaultFlavor").append(application.serializedForm());
- String flavor = "example-flavor";
- tester.curator().create(path);
- tester.curator().set(path, flavor.getBytes(StandardCharsets.UTF_8));
-
- assertEquals(Optional.of(flavor), tester.nodeRepository().getDefaultFlavorOverride(application));
-
- ApplicationId applicationWithoutDefaultFlavor =
- ApplicationId.from(TenantName.from("does"), ApplicationName.from("not"), InstanceName.from("exist"));
- assertFalse(tester.nodeRepository().getDefaultFlavorOverride(applicationWithoutDefaultFlavor).isPresent());
- }
-
- @Test
public void only_allow_docker_containers_remove_in_ready() {
NodeRepositoryTester tester = new NodeRepositoryTester();
tester.addNode("id1", "host1", "docker", NodeType.tenant);