From 34886141d8a0a60d84b31d85d5ba2eeaff4744bf Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Wed, 13 Dec 2017 14:38:54 +0100 Subject: Set timeout for internal deployment in one place Use barrier timeout as basis for timeout, in the same way we do for external deployments. --- .../vespa/hosted/provision/maintenance/ApplicationMaintainer.java | 2 +- .../com/yahoo/vespa/hosted/provision/maintenance/NodeRetirer.java | 2 +- .../vespa/hosted/provision/maintenance/RetiredEarlyExpirer.java | 2 +- .../com/yahoo/vespa/hosted/provision/maintenance/RetiredExpirer.java | 2 +- .../com/yahoo/vespa/hosted/provision/testutils/MockDeployer.java | 5 +++++ 5 files changed, 9 insertions(+), 4 deletions(-) (limited to 'node-repository/src') diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ApplicationMaintainer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ApplicationMaintainer.java index 500861ad0d2..6a2376d748b 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ApplicationMaintainer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/ApplicationMaintainer.java @@ -75,7 +75,7 @@ public abstract class ApplicationMaintainer extends Maintainer { // Lock is acquired with a low timeout to reduce the chance of colliding with an external deployment. try (Mutex lock = nodeRepository().lock(application, Duration.ofSeconds(1))) { if ( ! isActive(application)) return; // became inactive since deployment was requested - Optional deployment = deployer.deployFromLocalActive(application, Duration.ofMinutes(30)); + Optional deployment = deployer.deployFromLocalActive(application); if ( ! deployment.isPresent()) return; // this will be done at another config server deployment.get().activate(); diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRetirer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRetirer.java index 12b63f66d3f..30b5f6f737d 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRetirer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRetirer.java @@ -123,7 +123,7 @@ public class NodeRetirer extends Maintainer { entry -> filterRetireableNodes(entry.getValue()))); if (retireableNodesByCluster.values().stream().mapToInt(Set::size).sum() == 0) continue; - Optional deployment = deployer.deployFromLocalActive(applicationId, Duration.ofMinutes(30)); + Optional deployment = deployer.deployFromLocalActive(applicationId); if ( ! deployment.isPresent()) continue; // this will be done at another config server Set replaceableNodes = retireableNodesByCluster.entrySet().stream() diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredEarlyExpirer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredEarlyExpirer.java index cb2fcb89284..ca0594e346c 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredEarlyExpirer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredEarlyExpirer.java @@ -51,7 +51,7 @@ public class RetiredEarlyExpirer extends Maintainer { List retiredNodes = entry.getValue(); try { - Optional deployment = deployer.deployFromLocalActive(application, Duration.ofMinutes(30)); + Optional deployment = deployer.deployFromLocalActive(application); if ( ! deployment.isPresent()) continue; // this will be done at another config server List nodesToRemove = new ArrayList<>(); diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredExpirer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredExpirer.java index 9ef09858bfa..4c5c8adf576 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredExpirer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/RetiredExpirer.java @@ -50,7 +50,7 @@ public class RetiredExpirer extends Expirer { ApplicationId application = entry.getKey(); List nodesToRemove = entry.getValue(); try { - Optional deployment = deployer.deployFromLocalActive(application, Duration.ofMinutes(30)); + Optional deployment = deployer.deployFromLocalActive(application); if ( ! deployment.isPresent()) continue; // this will be done at another config server nodeRepository.setRemovable(application, nodesToRemove); diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/MockDeployer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/MockDeployer.java index a05b0be344d..c880c66abc7 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/MockDeployer.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/testutils/MockDeployer.java @@ -45,6 +45,11 @@ public class MockDeployer implements Deployer { this.applications = applications; } + @Override + public Optional deployFromLocalActive(ApplicationId application) { + return deployFromLocalActive(application, Duration.ofSeconds(60)); + } + @Override public Optional deployFromLocalActive(ApplicationId id, Duration timeout) { return Optional.of(new MockDeployment(provisioner, applications.get(id))); -- cgit v1.2.3