diff options
author | Valerij Fredriksen <freva@users.noreply.github.com> | 2021-03-02 20:52:48 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-03-02 20:52:48 +0100 |
commit | c0c24529bb09e5bb2f129ac8e34451c0b2cc403f (patch) | |
tree | 7b38986e73b404ca1b234f281f450cf4445ce856 /controller-server | |
parent | 5ebf0c8733d462324649022757e108950ba6004e (diff) | |
parent | 1d2b8fc5ce7a25db24ad4493259b123f35535e13 (diff) |
Merge pull request #16750 from vespa-engine/freva/fix-patch
Patch archive URI fixes
Diffstat (limited to 'controller-server')
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) { |