aboutsummaryrefslogtreecommitdiffstats
path: root/configserver/src
diff options
context:
space:
mode:
authorHarald Musum <musum@verizonmedia.com>2021-11-27 09:37:25 +0100
committerGitHub <noreply@github.com>2021-11-27 09:37:25 +0100
commitdf4aea495dfc6b780d483dd5d4d8bd0d2c0315d9 (patch)
tree112de9e7e6b9c705507479d72e8adfd8aa882af8 /configserver/src
parent5a3c79977b4405426d909aa4cf3bff08f6156a89 (diff)
Revert "read routingmethod"
Diffstat (limited to 'configserver/src')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/tenant/ContainerEndpointSerializer.java16
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java17
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/tenant/ContainerEndpointSerializerTest.java18
3 files changed, 25 insertions, 26 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/ContainerEndpointSerializer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/ContainerEndpointSerializer.java
index b813d56b345..3bbf98357f5 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/ContainerEndpointSerializer.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/ContainerEndpointSerializer.java
@@ -31,18 +31,16 @@ public class ContainerEndpointSerializer {
private static final String scopeField = "scope";
private static final String namesField = "names";
private static final String weightField = "weight";
- private static final String routingMethodField = "routingMethod";
private ContainerEndpointSerializer() {}
public static ContainerEndpoint endpointFromSlime(Inspector inspector) {
final var clusterId = inspector.field(clusterIdField).asString();
- final var scope = inspector.field(scopeField).asString();
+ // Currently assigned endpoints that do not have scope should be interpreted as global endpoints
+ // TODO: Remove default assignment after 7.500
+ final var scope = SlimeUtils.optionalString(inspector.field(scopeField)).orElse(ApplicationClusterEndpoint.Scope.global.name());
final var namesInspector = inspector.field(namesField);
final var weight = SlimeUtils.optionalInteger(inspector.field(weightField));
- // assign default routingmethod. Remove when 7.507 is latest version
- // Cannot be used before all endpoints are assigned explicit routingmethod (from controller)
- final var routingMethod = SlimeUtils.optionalString(inspector.field(routingMethodField)).orElse(ApplicationClusterEndpoint.RoutingMethod.sharedLayer4.name());
if (clusterId.isEmpty()) {
throw new IllegalStateException("'clusterId' missing on serialized ContainerEndpoint");
}
@@ -55,10 +53,6 @@ public class ContainerEndpointSerializer {
throw new IllegalStateException("'names' missing on serialized ContainerEndpoint");
}
- if(routingMethod.isEmpty()) {
- throw new IllegalStateException("'routingMethod' missing on serialized ContainerEndpoint");
- }
-
final var names = new ArrayList<String>();
namesInspector.traverse((ArrayTraverser) (idx, nameInspector) -> {
@@ -66,8 +60,7 @@ public class ContainerEndpointSerializer {
names.add(containerName);
});
- return new ContainerEndpoint(clusterId, ApplicationClusterEndpoint.Scope.valueOf(scope), names, weight,
- ApplicationClusterEndpoint.RoutingMethod.valueOf(routingMethod));
+ return new ContainerEndpoint(clusterId, ApplicationClusterEndpoint.Scope.valueOf(scope), names, weight);
}
public static List<ContainerEndpoint> endpointListFromSlime(Slime slime) {
@@ -92,7 +85,6 @@ public class ContainerEndpointSerializer {
endpoint.weight().ifPresent(w -> cursor.setLong(weightField, w));
final var namesInspector = cursor.setArray(namesField);
endpoint.names().forEach(namesInspector::addString);
- cursor.setString(routingMethodField, endpoint.routingMethod().name());
}
public static Slime endpointListToSlime(List<ContainerEndpoint> endpoints) {
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java
index 79632b8446b..08e6a353fbb 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java
@@ -63,7 +63,6 @@ import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Optional;
-import java.util.OptionalInt;
import java.util.Set;
import java.util.logging.Level;
@@ -249,18 +248,14 @@ public class SessionPreparerTest {
" \"names\": [\n" +
" \"foo.app1.tenant1.global.vespa.example.com\",\n" +
" \"rotation-042.vespa.global.routing\"\n" +
- " ],\n" +
- " \"scope\": \"global\", \n" +
- " \"routingMethod\": \"shared\"\n" +
+ " ]\n" +
" },\n" +
" {\n" +
" \"clusterId\": \"bar\",\n" +
" \"names\": [\n" +
" \"bar.app1.tenant1.global.vespa.example.com\",\n" +
" \"rotation-043.vespa.global.routing\"\n" +
- " ],\n" +
- " \"scope\": \"global\",\n" +
- " \"routingMethod\": \"sharedLayer4\"\n" +
+ " ]\n" +
" }\n" +
"]";
var applicationId = applicationId("test");
@@ -272,15 +267,11 @@ public class SessionPreparerTest {
var expected = List.of(new ContainerEndpoint("foo",
ApplicationClusterEndpoint.Scope.global,
List.of("foo.app1.tenant1.global.vespa.example.com",
- "rotation-042.vespa.global.routing"),
- OptionalInt.empty(),
- ApplicationClusterEndpoint.RoutingMethod.shared),
+ "rotation-042.vespa.global.routing")),
new ContainerEndpoint("bar",
ApplicationClusterEndpoint.Scope.global,
List.of("bar.app1.tenant1.global.vespa.example.com",
- "rotation-043.vespa.global.routing"),
- OptionalInt.empty(),
- ApplicationClusterEndpoint.RoutingMethod.sharedLayer4));
+ "rotation-043.vespa.global.routing")));
assertEquals(expected, readContainerEndpoints(applicationId));
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/ContainerEndpointSerializerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/ContainerEndpointSerializerTest.java
index c8f31697c5e..2b746a9c1c6 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/ContainerEndpointSerializerTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/ContainerEndpointSerializerTest.java
@@ -35,6 +35,22 @@ public class ContainerEndpointSerializerTest {
}
@Test
+ public void readEndpointWithoutScope() {
+ final var slime = new Slime();
+ final var entry = slime.setObject();
+
+ entry.setString("clusterId", "foobar");
+ final var entryNames = entry.setArray("names");
+ entryNames.addString("a");
+ entryNames.addString("b");
+
+ final var endpoint = ContainerEndpointSerializer.endpointFromSlime(slime.get());
+ assertEquals("foobar", endpoint.clusterId());
+ assertEquals(ApplicationClusterEndpoint.Scope.global, endpoint.scope());
+ assertEquals(List.of("a", "b"), endpoint.names());
+ }
+
+ @Test
public void writeReadSingleEndpoint() {
final var endpoint = new ContainerEndpoint("foo", ApplicationClusterEndpoint.Scope.global, List.of("a", "b"), OptionalInt.of(1));
final var serialized = new Slime();
@@ -46,7 +62,7 @@ public class ContainerEndpointSerializerTest {
@Test
public void writeReadEndpoints() {
- final var endpoints = List.of(new ContainerEndpoint("foo", ApplicationClusterEndpoint.Scope.global, List.of("a", "b"), OptionalInt.of(3), ApplicationClusterEndpoint.RoutingMethod.shared));
+ final var endpoints = List.of(new ContainerEndpoint("foo", ApplicationClusterEndpoint.Scope.global, List.of("a", "b")));
final var serialized = ContainerEndpointSerializer.endpointListToSlime(endpoints);
final var deserialized = ContainerEndpointSerializer.endpointListFromSlime(serialized);