From 315c1feec1ac67f97419d910550f4aebfe9290a7 Mon Sep 17 00:00:00 2001 From: Jon Bratseth Date: Fri, 10 Mar 2023 18:31:05 +0100 Subject: Cooldown from completion rather than start of scaling --- .../com/yahoo/vespa/hosted/provision/autoscale/ClusterModel.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'node-repository/src/main/java/com/yahoo') diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/ClusterModel.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/ClusterModel.java index 281d9efe51a..2f9ad28a072 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/ClusterModel.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/ClusterModel.java @@ -243,8 +243,10 @@ public class ClusterModel { } private boolean hasScaledIn(Duration period) { - return cluster.lastScalingEvent().map(event -> event.at()).orElse(Instant.MIN) - .isAfter(clock.instant().minus(period)); + if (cluster.lastScalingEvent().isEmpty()) return false; + var lastCompletion = cluster.lastScalingEvent().get().completion(); + if (lastCompletion.isEmpty()) return true; // Ongoing + return lastCompletion.get().isAfter(clock.instant().minus(period)); } private ClusterNodesTimeseries nodeTimeseries() { return nodeTimeseries; } -- cgit v1.2.3