summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJon Marius Venstad <jonmv@users.noreply.github.com>2020-08-19 10:31:12 +0200
committerGitHub <noreply@github.com>2020-08-19 10:31:12 +0200
commit5d9f42f32188ea9cc2af6d0ea0b618562e8089ab (patch)
tree542f5ccd763bea13d48c5d179401e2aaa23f3260
parentec906d21cbbcc913a26f6b871e02fd5ab6c09c01 (diff)
parentcfa117fdd69d76c6a84951491a98b14251977ef0 (diff)
Merge pull request #14094 from vespa-engine/revert-14092-hmusum/throw-instead-of-returning-null
Revert "Throw exception instead of returning null when reading application id…"
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/deploy/Deployment.java9
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionZooKeeperClient.java4
2 files changed, 7 insertions, 6 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/Deployment.java b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/Deployment.java
index 21103b490fd..8c2e6027691 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/Deployment.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/Deployment.java
@@ -131,10 +131,11 @@ public class Deployment implements com.yahoo.config.provision.Deployment {
if ( ! prepared)
prepare();
- validateSessionStatus(session);
- ApplicationId applicationId = session.getApplicationId();
- try (ActionTimer timer = applicationRepository.timerFor(applicationId, "deployment.activateMillis")) {
+ try (ActionTimer timer = applicationRepository.timerFor(session.getApplicationId(), "deployment.activateMillis")) {
TimeoutBudget timeoutBudget = new TimeoutBudget(clock, timeout);
+ validateSessionStatus(session);
+ ApplicationId applicationId = session.getApplicationId();
+
if ( ! timeoutBudget.hasTimeLeft()) throw new RuntimeException("Timeout exceeded when trying to activate '" + applicationId + "'");
RemoteSession previousActiveSession;
@@ -147,7 +148,7 @@ public class Deployment implements com.yahoo.config.provision.Deployment {
throw e;
}
catch (Exception e) {
- throw new InternalServerException("Error when activating '" + applicationId + "'", e);
+ throw new InternalServerException("Error activating application", e);
}
waiter.awaitCompletion(timeoutBudget.timeLeft());
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionZooKeeperClient.java b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionZooKeeperClient.java
index 80fa972a4d2..b0236e4e4e4 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionZooKeeperClient.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionZooKeeperClient.java
@@ -11,6 +11,7 @@ import com.yahoo.config.provision.AllocatedHosts;
import com.yahoo.config.provision.ApplicationId;
import com.yahoo.config.provision.AthenzDomain;
import com.yahoo.config.provision.DockerImage;
+import com.yahoo.config.provision.NodeFlavors;
import com.yahoo.path.Path;
import com.yahoo.text.Utf8;
import com.yahoo.transaction.Transaction;
@@ -142,8 +143,7 @@ public class SessionZooKeeperClient {
public ApplicationId readApplicationId() {
String idString = configCurator.getData(applicationIdPath());
- if (idString == null) throw new RuntimeException("Unable to read application id at " + applicationIdPath());
- return ApplicationId.fromSerializedForm(idString);
+ return idString == null ? null : ApplicationId.fromSerializedForm(idString);
}
void writeApplicationPackageReference(FileReference applicationPackageReference) {