aboutsummaryrefslogtreecommitdiffstats
path: root/controller-server
diff options
context:
space:
mode:
authorValerij Fredriksen <freva@users.noreply.github.com>2021-03-02 20:52:48 +0100
committerGitHub <noreply@github.com>2021-03-02 20:52:48 +0100
commitc0c24529bb09e5bb2f129ac8e34451c0b2cc403f (patch)
tree7b38986e73b404ca1b234f281f450cf4445ce856 /controller-server
parent5ebf0c8733d462324649022757e108950ba6004e (diff)
parent1d2b8fc5ce7a25db24ad4493259b123f35535e13 (diff)
Merge pull request #16750 from vespa-engine/freva/fix-patch
Patch archive URI fixes
Diffstat (limited to 'controller-server')
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/ArchiveUriUpdater.java7
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ArchiveUriUpdaterTest.java6
2 files changed, 9 insertions, 4 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/ArchiveUriUpdater.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/ArchiveUriUpdater.java
index fe219f12af4..5dce4d7b344 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/ArchiveUriUpdater.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/ArchiveUriUpdater.java
@@ -13,8 +13,8 @@ import java.net.URI;
import java.time.Duration;
import java.util.HashMap;
import java.util.HashSet;
-import java.util.Set;
import java.util.Map;
+import java.util.Set;
/**
* Updates archive URIs for tenants in all zones.
@@ -23,6 +23,8 @@ import java.util.Map;
*/
public class ArchiveUriUpdater extends ControllerMaintainer {
+ private static final Set<TenantName> INFRASTRUCTURE_TENANTS = Set.of(TenantName.from("hosted-vespa"));
+
private final ApplicationController applications;
private final NodeRepository nodeRepository;
private final ArchiveService archiveService;
@@ -40,7 +42,8 @@ public class ArchiveUriUpdater extends ControllerMaintainer {
for (var application : applications.asList()) {
for (var instance : application.instances().values()) {
for (var deployment : instance.deployments().values()) {
- tenantsByZone.computeIfAbsent(deployment.zone(), zone -> new HashSet<>())
+ tenantsByZone
+ .computeIfAbsent(deployment.zone(), zone -> new HashSet<>(INFRASTRUCTURE_TENANTS))
.add(instance.id().tenant());
}
}
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ArchiveUriUpdaterTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ArchiveUriUpdaterTest.java
index 90a58c47677..a9666cf9113 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ArchiveUriUpdaterTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ArchiveUriUpdaterTest.java
@@ -33,6 +33,7 @@ public class ArchiveUriUpdaterTest {
var tenant1 = TenantName.from("tenant1");
var tenant2 = TenantName.from("tenant2");
+ var tenantInfra = TenantName.from("hosted-vespa");
var application = tester.newDeploymentContext(tenant1.value(), "app1", "instance1");
ZoneId zone = ZoneId.from("prod", "ap-northeast-1");
@@ -42,17 +43,18 @@ public class ArchiveUriUpdaterTest {
// Archive service now has URI for tenant1, but tenant1 is not deployed in zone
setArchiveUriInService(Map.of(tenant1, "uri-1"), zone);
+ setArchiveUriInService(Map.of(tenantInfra, "uri-3"), zone);
updater.maintain();
assertArchiveUris(Map.of(), zone);
deploy(application, zone);
updater.maintain();
- assertArchiveUris(Map.of(tenant1, "uri-1"), zone);
+ assertArchiveUris(Map.of(tenant1, "uri-1", tenantInfra, "uri-3"), zone);
// URI for tenant1 should be updated and removed for tenant2
setArchiveUriInNodeRepo(Map.of(tenant1, "wrong-uri", tenant2, "uri-2"), zone);
updater.maintain();
- assertArchiveUris(Map.of(tenant1, "uri-1"), zone);
+ assertArchiveUris(Map.of(tenant1, "uri-1", tenantInfra, "uri-3"), zone);
}
private void assertArchiveUris(Map<TenantName, String> expectedUris, ZoneId zone) {