From b8cd269f9c27fbf204290e6834ff48701e35c960 Mon Sep 17 00:00:00 2001 From: Jon Bratseth Date: Mon, 7 Nov 2022 23:23:03 +0100 Subject: Don't wait for maintenance redeploy if autoscaling deploy fails once --- .../config/server/application/ApplicationCuratorDatabase.java | 2 +- .../vespa/hosted/provision/maintenance/AutoscalingMaintainer.java | 7 ++++--- zkfacade/src/main/java/com/yahoo/vespa/curator/Lock.java | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationCuratorDatabase.java b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationCuratorDatabase.java index 7f099e4cf67..34fe8a2159d 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationCuratorDatabase.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationCuratorDatabase.java @@ -103,7 +103,7 @@ public class ApplicationCuratorDatabase { /** * Returns the active session id for the given application. - * Returns Optional.empty if application not found or no active session exists. + * Returns Optional.empty() if application not found or no active session exists. */ public Optional activeSessionOf(ApplicationId id) { Optional data = curator.getData(applicationPath(id)); diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/AutoscalingMaintainer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/AutoscalingMaintainer.java index c51aad9c9b1..ab512d11ff9 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/AutoscalingMaintainer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/AutoscalingMaintainer.java @@ -84,13 +84,14 @@ public class AutoscalingMaintainer extends NodeRepositoryMaintainer { .with(advice.reason()) .withTarget(advice.target()); applications().put(application.get().with(updatedCluster), lock); - if (advice.isPresent() && advice.target().isPresent() && !cluster.get().targetResources().equals(advice.target())) { + + ClusterResources current = new AllocatableClusterResources(clusterNodes, nodeRepository()).advertisedResources(); + if (advice.isPresent() && advice.target().isPresent() && !current.equals(advice.target().get())) { // 2. Also autoscale - ClusterResources before = new AllocatableClusterResources(clusterNodes, nodeRepository()).advertisedResources(); try (MaintenanceDeployment deployment = new MaintenanceDeployment(applicationId, deployer, metric, nodeRepository())) { if (deployment.isValid()) { deployment.activate(); - logAutoscaling(before, advice.target().get(), applicationId, clusterNodes); + logAutoscaling(current, advice.target().get(), applicationId, clusterNodes); } } } diff --git a/zkfacade/src/main/java/com/yahoo/vespa/curator/Lock.java b/zkfacade/src/main/java/com/yahoo/vespa/curator/Lock.java index 9634d2220c0..888e45328e9 100644 --- a/zkfacade/src/main/java/com/yahoo/vespa/curator/Lock.java +++ b/zkfacade/src/main/java/com/yahoo/vespa/curator/Lock.java @@ -50,7 +50,7 @@ public class Lock implements Mutex { if (!acquired) { threadLockStats.acquireTimedOut(); throw new UncheckedTimeoutException("Timed out after waiting " + timeout + - " to acquire lock '" + lockPath + "'"); + " to acquire lock '" + lockPath + "'"); } threadLockStats.lockAcquired(); -- cgit v1.2.3