From 0e2f3d2f8b2b6f776477376e2fb0b0d2634159a7 Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Fri, 22 Oct 2021 13:07:52 +0200 Subject: Guard against no active session Application might be removed adter getting all active applications --- .../java/com/yahoo/vespa/config/server/session/SessionRepository.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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 083cb535bfa..0aeea5ce2d5 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 @@ -433,7 +433,8 @@ public class SessionRepository { private Optional loadSessionIfActive(RemoteSession session) { for (ApplicationId applicationId : applicationRepo.activeApplications()) { - if (applicationRepo.requireActiveSessionOf(applicationId) == session.getSessionId()) { + Optional activeSession = applicationRepo.activeSessionOf(applicationId); + if (activeSession.isPresent() && activeSession.get() == session.getSessionId()) { log.log(Level.FINE, () -> "Found active application for session " + session.getSessionId() + " , loading it"); applicationRepo.activateApplication(ensureApplicationLoaded(session), session.getSessionId()); log.log(Level.INFO, session.logPre() + "Application activated successfully: " + applicationId + " (generation " + session.getSessionId() + ")"); -- cgit v1.2.3