diff options
author | jonmv <venstad@gmail.com> | 2023-06-27 10:45:59 +0200 |
---|---|---|
committer | jonmv <venstad@gmail.com> | 2023-06-27 10:45:59 +0200 |
commit | 8361d98b46bd25f6113d50624fd26e8b73f765b7 (patch) | |
tree | 6759773d7153f758514c0f1f3e2cc9b0aaad449d | |
parent | 16a5e8e11248c4a9e6c00421ba30caca8a1e46eb (diff) |
Do not take tenant-host lock in infra-deployer
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/InfraDeployerImpl.java | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/InfraDeployerImpl.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/InfraDeployerImpl.java index 35b2fef2c78..1f424a1e1d5 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/InfraDeployerImpl.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/InfraDeployerImpl.java @@ -89,23 +89,20 @@ public class InfraDeployerImpl implements InfraDeployer { public void prepare() { if (prepared) return; - try (Mutex lock = nodeRepository.applications().lock(application.getApplicationId())) { - NodeType nodeType = application.getCapacity().type(); - Version targetVersion = infrastructureVersions.getTargetVersionFor(nodeType); - hostSpecs = provisioner.prepare(application.getApplicationId(), - application.getClusterSpecWithVersion(targetVersion), - application.getCapacity(), - logger::log); - - prepared = true; - } + NodeType nodeType = application.getCapacity().type(); + Version targetVersion = infrastructureVersions.getTargetVersionFor(nodeType); + hostSpecs = provisioner.prepare(application.getApplicationId(), + application.getClusterSpecWithVersion(targetVersion), + application.getCapacity(), + logger::log); + + prepared = true; } @Override public long activate() { + prepare(); try (var lock = provisioner.lock(application.getApplicationId())) { - prepare(); - if (hostSpecs.isEmpty()) { logger.log(Level.FINE, () -> "No nodes to provision for " + application.getCapacity().type() + ", removing application"); removeApplication(application.getApplicationId()); |