summaryrefslogtreecommitdiffstats
path: root/controller-server
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2021-02-18 16:06:40 +0100
committerJon Bratseth <bratseth@gmail.com>2021-02-18 16:06:40 +0100
commitcf5d9df82b0502dfcc975b847915c4606eb02dea (patch)
treef334a03c3556037e1e9008bb8b0f56806375c089 /controller-server
parentcdcc928fb9f657a92f0a71bd541590cc821c76c3 (diff)
Pass and store traffic fractions
Diffstat (limited to 'controller-server')
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/TrafficFractionUpdater.java6
1 files changed, 1 insertions, 5 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/TrafficFractionUpdater.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/TrafficFractionUpdater.java
index b3f6516dd29..8656db55aed 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/TrafficFractionUpdater.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/maintenance/TrafficFractionUpdater.java
@@ -37,12 +37,9 @@ public class TrafficFractionUpdater extends ControllerMaintainer {
@Override
protected boolean maintain() {
for (var application : applications.asList()) {
- System.out.println("Application " + application);
for (var instance : application.instances().values()) {
- System.out.println(" Instance " + instance);
for (var deployment : instance.deployments().values()) {
if ( ! deployment.zone().environment().isProduction()) continue;
- System.out.println(" Deployment " + deployment);
updateTrafficFraction(instance, deployment);
}
}
@@ -58,13 +55,12 @@ public class TrafficFractionUpdater extends ControllerMaintainer {
long prodRegions = instance.deployments().values().stream()
.filter(i -> i.zone().environment().isProduction())
.count();
- System.out.println(" qps in zone: " + qpsInZone + ", total qps: " + totalQps + ", prod regions: " + prodRegions);
double currentTrafficFraction = totalQps == 0 ? 0 : qpsInZone / totalQps;
double maxTrafficFraction = prodRegions < 2 ? 1.0 : 1.0 / ( prodRegions - 1.0);
if (currentTrafficFraction > maxTrafficFraction) // This can happen because the assumption of equal traffic
maxTrafficFraction = currentTrafficFraction; // distribution can be incorrect
- nodeRepository.setTrafficFraction(deployment.zone(), instance.id(), currentTrafficFraction, maxTrafficFraction);
+ nodeRepository.patchApplication(deployment.zone(), instance.id(), currentTrafficFraction, maxTrafficFraction);
}
}