diff options
author | Harald Musum <musum@yahooinc.com> | 2023-08-31 10:24:49 +0200 |
---|---|---|
committer | Harald Musum <musum@yahooinc.com> | 2023-08-31 10:24:49 +0200 |
commit | 6da97b812ac9ac65c52d0e20911b515d1d23f7d5 (patch) | |
tree | 3dad3b995dc6f487052eb1d204176c64c074c8dd /configserver | |
parent | a12253b61f2694c8d4b207386dad418e8b824151 (diff) |
Check existence inside lock
Diffstat (limited to 'configserver')
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/application/ApplicationCuratorDatabase.java | 3 |
1 files changed, 2 insertions, 1 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 a4bab8302cb..68b1339a0a9 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 @@ -77,9 +77,10 @@ public class ApplicationCuratorDatabase { public void createApplication(ApplicationId id, boolean writeAsJson) { if ( ! id.tenant().equals(tenant)) throw new IllegalArgumentException("Cannot write application id '" + id + "' for tenant '" + tenant + "'"); - if (curator.exists(applicationPath(id))) return; try (Lock lock = lock(id)) { + if (curator.exists(applicationPath(id))) return; + if (writeAsJson) { var applicationData = new ApplicationData(id, OptionalLong.empty(), OptionalLong.empty()); curator.set(applicationPath(id), applicationData.toJson()); |