diff options
author | Jon Marius Venstad <jonmv@users.noreply.github.com> | 2021-05-24 20:52:37 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-24 20:52:37 +0200 |
commit | 3dc35931d263aeabe60705a35a5b5b3f73dbdf0a (patch) | |
tree | 4dffcc45ca43e9fee46773aef14f5b16dddf70eb /controller-server/src | |
parent | 25cf16a17c7210154fb029e220a275783d33f8f9 (diff) | |
parent | 9a1a0df312c7282e138f67e8d7778a136c4bf0e7 (diff) |
Merge pull request #17947 from vespa-engine/hmusum/check-that-containers-are-up-in-parallel
Check that endpoints are up in parallel
Diffstat (limited to 'controller-server/src')
-rw-r--r-- | controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java index 5bd43dfd695..e9755b7fd8b 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunner.java @@ -426,21 +426,20 @@ public class InternalStepRunner implements StepRunner { return Optional.empty(); } - /** Returns true iff all containers in the deployment give 100 consecutive 200 OK responses on /status.html. */ + /** Returns true iff all calls to endpoint in the deployment give 100 consecutive 200 OK responses on /status.html. */ private boolean containersAreUp(ApplicationId id, ZoneId zoneId, DualLogger logger) { var endpoints = controller.routing().zoneEndpointsOf(Set.of(new DeploymentId(id, zoneId))); if ( ! endpoints.containsKey(zoneId)) return false; - for (var endpoint : endpoints.get(zoneId)) { + return endpoints.get(zoneId).parallelStream().map(endpoint -> { boolean ready = controller.jobController().cloud().ready(endpoint.url()); if ( ! ready) { logger.log("Failed to get 100 consecutive OKs from " + endpoint); - return false; + return Boolean.FALSE; } - } - - return true; + return Boolean.TRUE; + }).allMatch(Boolean.TRUE::equals); } /** Returns true iff all containers in the tester deployment give 100 consecutive 200 OK responses on /status.html. */ |