summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJon Marius Venstad <jonmv@users.noreply.github.com>2020-09-18 12:22:04 +0200
committerGitHub <noreply@github.com>2020-09-18 12:22:04 +0200
commitffece1d93335a9cff4674b883a569c2853a9b820 (patch)
treedf42191095a38d786fbf0c5fab14030a90c35493
parentbb2b675eb9c6a159830a37eaa63703567d2b669e (diff)
parentabed9dbb485cf8a89ab03549bcf130ce977a936f (diff)
Merge pull request #14441 from vespa-engine/hmusum/take-lock-before-deleting
Take lock before deleting
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java4
1 files changed, 3 insertions, 1 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java
index 6e9e8ab59ff..4f577d8f62c 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java
@@ -377,7 +377,9 @@ public class SessionRepository {
remoteSession.deactivate();
if (localSession == null) {
// This change will be picked up by directoryCache in this class, which will do the rest of the cleanup
- remoteSession.delete();
+ try (Lock lock = lock(remoteSession.getSessionId())) {
+ remoteSession.delete();
+ }
} else {
deleteLocalSession(localSession);
}