diff options
author | Jon Marius Venstad <jonmv@users.noreply.github.com> | 2020-01-09 14:05:55 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-01-09 14:05:55 +0100 |
commit | bdade3d81383517b364c4e7034316e018ae536fd (patch) | |
tree | 3525eeb46707f7981840f9592eab80fac38b0f18 /controller-server | |
parent | 9a16e95693f9c2c15bbe8ace8e4f4b264fe508ef (diff) | |
parent | 3f9654964077f5708436c4379c28fc3e159a50bd (diff) |
Merge pull request #11722 from vespa-engine/mpolden/improve-deployment-v1-performance
Avoid re-reading version status for every application
Diffstat (limited to 'controller-server')
2 files changed, 7 insertions, 3 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java index f9ad2ebf553..acfd326a5c0 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/JobController.java @@ -296,19 +296,24 @@ public class JobController { /** Returns the deployment status of the given application. */ public DeploymentStatus deploymentStatus(Application application) { + return deploymentStatus(application, controller.systemVersion()); + } + + private DeploymentStatus deploymentStatus(Application application, Version systemVersion) { return new DeploymentStatus(application, DeploymentStatus.jobsFor(application, controller.system()).stream() .collect(toUnmodifiableMap(job -> job, job -> jobStatus(job))), controller.system(), - controller.systemVersion(), + systemVersion, controller.clock().instant()); } /** Adds deployment status to each of the given applications. */ public DeploymentStatusList deploymentStatuses(ApplicationList applications) { + var systemVersion = controller.systemVersion(); return DeploymentStatusList.from(applications.asList().stream() - .map(this::deploymentStatus) + .map(application -> deploymentStatus(application, systemVersion)) .collect(toUnmodifiableList())); } diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/VersionStatusSerializer.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/VersionStatusSerializer.java index 366e2c9af4b..53f2d467e2d 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/VersionStatusSerializer.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/persistence/VersionStatusSerializer.java @@ -44,7 +44,6 @@ public class VersionStatusSerializer { private static final String isReleasedField = "isReleased"; private static final String deploymentStatisticsField = "deploymentStatistics"; private static final String confidenceField = "confidence"; - private static final String configServersField = "configServerHostnames"; // NodeVersions fields private static final String nodeVersionsField = "nodeVersions"; |