diff options
author | Harald Musum <musum@yahooinc.com> | 2022-02-22 09:10:14 +0100 |
---|---|---|
committer | Harald Musum <musum@yahooinc.com> | 2022-02-22 09:10:14 +0100 |
commit | 9552bae8cb180860684fde02a13f382a5cee6068 (patch) | |
tree | aaad50363562a0c3cf859b10df24905b2933cc99 /configserver | |
parent | dc5882d2695456341d77a326b84a2df0464bec47 (diff) |
Use Optional when returning session
No functional changes
Diffstat (limited to 'configserver')
12 files changed, 57 insertions, 73 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java b/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java index ccd9f0e7044..c475b4c976d 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java @@ -420,12 +420,12 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye Tenant tenant = tenantRepository.getTenant(application.tenant()); if (tenant == null) return Optional.empty(); - Session activeSession = getActiveLocalSession(tenant, application); - if (activeSession == null) return Optional.empty(); + Optional<LocalSession> activeSession = getActiveLocalSession(tenant, application); + if (activeSession.isEmpty()) return Optional.empty(); TimeoutBudget timeoutBudget = new TimeoutBudget(clock, timeout); SessionRepository sessionRepository = tenant.getSessionRepository(); DeployLogger logger = new SilentDeployLogger(); - Session newSession = sessionRepository.createSessionFromExisting(activeSession, true, timeoutBudget); + Session newSession = sessionRepository.createSessionFromExisting(activeSession.get(), true, timeoutBudget); return Optional.of(Deployment.unprepared(newSession, this, hostProvisioner, tenant, logger, timeout, clock, false /* don't validate as this is already deployed */, bootstrap)); @@ -435,9 +435,7 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye public Optional<Instant> lastDeployTime(ApplicationId application) { Tenant tenant = tenantRepository.getTenant(application.tenant()); if (tenant == null) return Optional.empty(); - Session activeSession = getActiveSession(tenant, application); - if (activeSession == null) return Optional.empty(); - return Optional.of(activeSession.getCreateTime()); + return getActiveSession(tenant, application).map(Session::getCreateTime); } public ApplicationId activate(Tenant tenant, @@ -451,13 +449,13 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye return session.getApplicationId(); } - public Transaction deactivateCurrentActivateNew(Session active, Session prepared, boolean force) { + public Transaction deactivateCurrentActivateNew(Optional<Session> active, Session prepared, boolean force) { Tenant tenant = tenantRepository.getTenant(prepared.getTenantName()); Transaction transaction = tenant.getSessionRepository().createActivateTransaction(prepared); - if (active != null) { - checkIfActiveHasChanged(prepared, active, force); - checkIfActiveIsNewerThanSessionToBeActivated(prepared.getSessionId(), active.getSessionId()); - transaction.add(active.createDeactivateTransaction().operations()); + if (active.isPresent()) { + checkIfActiveHasChanged(prepared, active.get(), force); + checkIfActiveIsNewerThanSessionToBeActivated(prepared.getSessionId(), active.get().getSessionId()); + transaction.add(active.get().createDeactivateTransaction().operations()); } transaction.add(updateMetaDataWithDeployTimestamp(tenant, clock.instant())); return transaction; @@ -679,10 +677,9 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye if (tenant == null) throw new NotFoundException("Tenant '" + applicationId.tenant() + "' not found"); Optional<ApplicationSet> activeApplicationSet = tenant.getSessionRepository().getActiveApplicationSet(applicationId); - if (activeApplicationSet.isPresent()) - return activeApplicationSet.get().getForVersionOrLatest(version, clock.instant()); - else - throw new NotFoundException("Unknown application id '" + applicationId + "'"); + if (activeApplicationSet.isEmpty()) throw new NotFoundException("Unknown application id '" + applicationId + "'"); + + return activeApplicationSet.get().getForVersionOrLatest(version, clock.instant()); } catch (NotFoundException e) { log.log(Level.WARNING, "Failed getting application for '" + applicationId + "': " + e.getMessage()); throw e; @@ -723,9 +720,9 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye public Optional<String> getApplicationPackageReference(ApplicationId applicationId) { Optional<String> applicationPackage = Optional.empty(); - Session session = getActiveSession(applicationId); - if (session != null) { - FileReference applicationPackageReference = session.getApplicationPackageReference(); + Optional<Session> session = getActiveSession(applicationId); + if (session.isPresent()) { + FileReference applicationPackageReference = session.get().getApplicationPackageReference(); File downloadDirectory = new File(Defaults.getDefaults().underVespaHome(configserverConfig().fileReferencesDir())); if (applicationPackageReference != null && ! fileReferenceExistsOnDisk(downloadDirectory, applicationPackageReference)) applicationPackage = Optional.of(applicationPackageReference.value()); @@ -817,7 +814,7 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye Optional<ApplicationTransaction> applicationTransaction = hostProvisioner.map(provisioner -> provisioner.lock(applicationId)) .map(lock -> new ApplicationTransaction(lock, transaction)); try (var sessionLock = tenant.getApplicationRepo().lock(applicationId)) { - Session activeSession = getActiveSession(applicationId); + Optional<Session> activeSession = getActiveSession(applicationId); CompletionWaiter waiter = session.getSessionZooKeeperClient().createActiveWaiter(); transaction.add(deactivateCurrentActivateNew(activeSession, session, force)); @@ -840,7 +837,7 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye * * @return the active session, or null if there is no active session for the given application id. */ - public Session getActiveSession(ApplicationId applicationId) { + public Optional<Session> getActiveSession(ApplicationId applicationId) { return getActiveRemoteSession(applicationId); } @@ -849,7 +846,7 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye * * @return the active session, or null if there is no active session for the given application id. */ - public RemoteSession getActiveRemoteSession(ApplicationId applicationId) { + public Optional<Session> getActiveRemoteSession(ApplicationId applicationId) { Tenant tenant = getTenant(applicationId); if (tenant == null) throw new IllegalArgumentException("Could not find any tenant for '" + applicationId + "'"); return getActiveSession(tenant, applicationId); @@ -919,11 +916,7 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye .forEach(appId -> applicationIds.add(appId.get()))); Map<ApplicationId, Long> activeSessions = new HashMap<>(); - applicationIds.forEach(applicationId -> { - Session activeSession = getActiveSession(applicationId); - if (activeSession != null) - activeSessions.put(applicationId, activeSession.getSessionId()); - }); + applicationIds.forEach(applicationId -> getActiveSession(applicationId).ifPresent(session -> activeSessions.put(applicationId, session.getSessionId()))); sessionsPerTenant.keySet().forEach(tenant -> tenant.getSessionRepository().deleteExpiredSessions(activeSessions)); } @@ -1086,20 +1079,14 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye return getRemoteSession(tenant, applicationRepo.requireActiveSessionOf(applicationId)); } - public RemoteSession getActiveSession(Tenant tenant, ApplicationId applicationId) { + public Optional<Session> getActiveSession(Tenant tenant, ApplicationId applicationId) { TenantApplications applicationRepo = tenant.getApplicationRepo(); - if (applicationRepo.activeApplications().contains(applicationId)) { - return tenant.getSessionRepository().getRemoteSession(applicationRepo.requireActiveSessionOf(applicationId)); - } - return null; + return applicationRepo.activeSessionOf(applicationId).map(aLong -> tenant.getSessionRepository().getRemoteSession(aLong)); } - public Session getActiveLocalSession(Tenant tenant, ApplicationId applicationId) { + public Optional<LocalSession> getActiveLocalSession(Tenant tenant, ApplicationId applicationId) { TenantApplications applicationRepo = tenant.getApplicationRepo(); - if (applicationRepo.activeApplications().contains(applicationId)) { - return tenant.getSessionRepository().getLocalSession(applicationRepo.requireActiveSessionOf(applicationId)); - } - return null; + return applicationRepo.activeSessionOf(applicationId).map(aLong -> tenant.getSessionRepository().getLocalSession(aLong)); } public double getQuotaUsageRate(ApplicationId applicationId) { @@ -1222,11 +1209,9 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye private final CompletionWaiter waiter; private final OptionalLong sourceSessionId; - public Activation(CompletionWaiter waiter, Session sourceSession) { + public Activation(CompletionWaiter waiter, Optional<Session> sourceSession) { this.waiter = waiter; - this.sourceSessionId = sourceSession == null - ? OptionalLong.empty() - : OptionalLong.of(sourceSession.getSessionId()); + this.sourceSessionId = sourceSession.map(s -> OptionalLong.of(s.getSessionId())).orElse(OptionalLong.empty()); } public void awaitCompletion(Duration timeout) { diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/ApplicationPackageMaintainer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/ApplicationPackageMaintainer.java index 9d8a3d87811..ccb17146df0 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/ApplicationPackageMaintainer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/ApplicationPackageMaintainer.java @@ -22,6 +22,7 @@ import com.yahoo.vespa.flags.FlagSource; import java.io.File; import java.time.Duration; import java.util.List; +import java.util.Optional; import java.util.logging.Logger; import static com.yahoo.vespa.config.server.filedistribution.FileDistributionUtil.fileReferenceExistsOnDisk; @@ -64,13 +65,12 @@ public class ApplicationPackageMaintainer extends ConfigServerMaintainer { for (var applicationId : applicationRepository.listApplications()) { log.finest(() -> "Verifying application package for " + applicationId); - Session session = applicationRepository.getActiveSession(applicationId); - if (session == null) - continue; // App might be deleted after call to listApplications() or not activated yet (bootstrap phase) + Optional<Session> session = applicationRepository.getActiveSession(applicationId); + if (session.isEmpty()) continue; // App might be deleted after call to listApplications() or not activated yet (bootstrap phase) - FileReference appFileReference = session.getApplicationPackageReference(); + FileReference appFileReference = session.get().getApplicationPackageReference(); if (appFileReference != null) { - long sessionId = session.getSessionId(); + long sessionId = session.get().getSessionId(); attempts++; if (!fileReferenceExistsOnDisk(downloadDirectory, appFileReference)) { log.fine(() -> "Downloading application package for " + applicationId + " (session " + sessionId + ")"); 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 ab02594d164..d292e1c2c0e 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 @@ -637,7 +637,7 @@ public class SessionRepository { newSessions.add(Long.parseLong(session.getName())); } catch (IOException e) { log.log(Level.FINE, "Unable to find last modified time for " + session.toPath()); - }; + } } } return newSessions; @@ -824,10 +824,7 @@ public class SessionRepository { } private Optional<Long> getActiveSessionId(ApplicationId applicationId) { - List<ApplicationId> applicationIds = applicationRepo.activeApplications(); - return applicationIds.contains(applicationId) - ? Optional.of(applicationRepo.requireActiveSessionOf(applicationId)) - : Optional.empty(); + return applicationRepo.activeSessionOf(applicationId); } private long getNextSessionId() { diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java index 284a0aa0a62..5804fcb8ad5 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java @@ -155,8 +155,7 @@ public class ApplicationRepositoryTest { assertTrue(result.configChangeActions().getReindexActions().isEmpty()); assertTrue(result.configChangeActions().getRestartActions().isEmpty()); - Session session = applicationRepository.getActiveLocalSession(tenant(), applicationId()); - session.getAllocatedHosts(); + applicationRepository.getActiveLocalSession(tenant(), applicationId()).get().getAllocatedHosts(); assertEquals(startTime, tenantMetaData(tenant()).createdTimestamp().toEpochMilli()); assertEquals(deployTime, tenantMetaData(tenant()).lastDeployTimestamp().toEpochMilli()); @@ -216,7 +215,7 @@ public class ApplicationRepositoryTest { long secondSessionId = deployApp(testApp).sessionId(); assertNotEquals(firstSessionId, secondSessionId); - Session session = applicationRepository.getActiveLocalSession(tenant(), applicationId()); + Session session = applicationRepository.getActiveLocalSession(tenant(), applicationId()).get(); assertEquals(firstSessionId, session.getMetaData().getPreviousActiveGeneration()); } @@ -330,7 +329,7 @@ public class ApplicationRepositoryTest { // Delete app and verify that it has been deleted from repos and provisioner and no application set exists assertTrue(applicationRepository.delete(applicationId())); - assertNull(applicationRepository.getActiveSession(applicationId())); + assertTrue(applicationRepository.getActiveSession(applicationId()).isEmpty()); assertEquals(Optional.empty(), sessionRepository.getRemoteSession(sessionId).applicationSet()); assertTrue(provisioner.removed()); assertEquals(tenant().getName(), provisioner.lastApplicationId().tenant()); @@ -366,7 +365,7 @@ public class ApplicationRepositoryTest { long sessionId = deployApp(testApp).sessionId(); assertNotNull(sessionRepository.getRemoteSession(sessionId)); assertNotNull(applicationRepository.getActiveSession(applicationId())); - assertEquals(sessionId, applicationRepository.getActiveSession(applicationId()).getSessionId()); + assertEquals(sessionId, applicationRepository.getActiveSession(applicationId()).get().getSessionId()); assertNotNull(applicationRepository.getApplication(applicationId())); provisioner.failureOnRemove(true); @@ -378,7 +377,7 @@ public class ApplicationRepositoryTest { } assertNotNull(sessionRepository.getRemoteSession(sessionId)); assertNotNull(applicationRepository.getActiveSession(applicationId())); - assertEquals(sessionId, applicationRepository.getActiveSession(applicationId()).getSessionId()); + assertEquals(sessionId, applicationRepository.getActiveSession(applicationId()).get().getSessionId()); // Delete should work when there is no failure anymore provisioner.failureOnRemove(false); @@ -388,7 +387,7 @@ public class ApplicationRepositoryTest { Path sessionNode = sessionRepository.getSessionPath(sessionId); assertEquals(Session.Status.DELETE.name(), Utf8.toString(curator.getData(sessionNode.append("sessionState")).get())); assertNotNull(sessionRepository.getRemoteSession(sessionId)); // session still exists - assertNull(applicationRepository.getActiveSession(applicationId())); // but it is not active + assertTrue(applicationRepository.getActiveSession(applicationId()).isEmpty()); // but it is not active try { applicationRepository.getApplication(applicationId()); fail("Should fail with NotFoundException, application should not exist"); @@ -514,7 +513,7 @@ public class ApplicationRepositoryTest { prepareAndActivate(testAppJdiscOnly); Tenant tenant = applicationRepository.getTenant(applicationId()); - Session session = applicationRepository.getActiveLocalSession(tenant, applicationId()); + Session session = applicationRepository.getActiveLocalSession(tenant, applicationId()).get(); List<NetworkPorts.Allocation> list = new ArrayList<>(); list.add(new NetworkPorts.Allocation(8080, "container", "container/container.0", "http")); @@ -561,7 +560,7 @@ public class ApplicationRepositoryTest { exceptionRule.expectMessage("tenant:test1 Session 3 is not prepared"); activate(applicationId(), sessionId, timeoutBudget); - Session activeSession = applicationRepository.getActiveSession(applicationId()); + Session activeSession = applicationRepository.getActiveSession(applicationId()).get(); assertEquals(firstSession, activeSession.getSessionId()); assertEquals(Session.Status.ACTIVATE, activeSession.getStatus()); } @@ -577,7 +576,7 @@ public class ApplicationRepositoryTest { exceptionRule.expectMessage("Timeout exceeded when trying to activate 'test1.testapp'"); activate(applicationId(), sessionId, new TimeoutBudget(clock, Duration.ofSeconds(0))); - Session activeSession = applicationRepository.getActiveSession(applicationId()); + Session activeSession = applicationRepository.getActiveSession(applicationId()).get(); assertEquals(firstSession, activeSession.getSessionId()); assertEquals(Session.Status.ACTIVATE, activeSession.getStatus()); } @@ -615,7 +614,7 @@ public class ApplicationRepositoryTest { @Test public void testThatPreviousSessionIsDeactivated() { deployApp(testAppJdiscOnly); - Session firstSession = applicationRepository.getActiveSession(applicationId()); + Session firstSession = applicationRepository.getActiveSession(applicationId()).get(); deployApp(testAppJdiscOnly); diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/DeployTester.java b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/DeployTester.java index 7f223fbce6f..2094c180338 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/DeployTester.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/DeployTester.java @@ -79,6 +79,10 @@ public class DeployTester { return tenantRepository.getTenant(tenantName); } + public Tenant tenant(ApplicationId applicationId) { + return tenantRepository.getTenant(applicationId.tenant()); + } + /** Create a model factory for the version of this source*/ public static CountingModelFactory createModelFactory(Clock clock) { return new CountingModelFactory(clock); @@ -148,9 +152,8 @@ public class DeployTester { } public AllocatedHosts getAllocatedHostsOf(ApplicationId applicationId) { - Tenant tenant = tenant(); - Session session = applicationRepository.getActiveSession(tenant, applicationId); - return session.getAllocatedHosts(); + Optional<Session> session = applicationRepository.getActiveSession(tenant(applicationId), applicationId); + return session.orElseThrow(() -> new IllegalArgumentException("No active session for " + applicationId)).getAllocatedHosts(); } public ApplicationId applicationId() { return applicationId; } diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java index a6d7cf02bc7..5df46b94b75 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java @@ -87,12 +87,12 @@ public class HostedDeployTest { .configserverConfig(createConfigserverConfig()).build(); ApplicationId appId = tester.applicationId(); tester.deployApp("src/test/apps/hosted/"); - assertFalse(tester.applicationRepository().getActiveSession(appId).getMetaData().isInternalRedeploy()); + assertFalse(tester.applicationRepository().getActiveSession(appId).get().getMetaData().isInternalRedeploy()); Optional<com.yahoo.config.provision.Deployment> deployment = tester.redeployFromLocalActive(); assertTrue(deployment.isPresent()); deployment.get().activate(); - assertTrue(tester.applicationRepository().getActiveSession(appId).getMetaData().isInternalRedeploy()); + assertTrue(tester.applicationRepository().getActiveSession(appId).get().getMetaData().isInternalRedeploy()); } @Test diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/RedeployTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/RedeployTest.java index 66bf25cadf6..10e21f1d484 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/RedeployTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/deploy/RedeployTest.java @@ -32,10 +32,10 @@ public class RedeployTest { Optional<com.yahoo.config.provision.Deployment> deployment = tester.redeployFromLocalActive(); assertTrue(deployment.isPresent()); - long activeSessionIdBefore = tester.applicationRepository().getActiveSession(tester.applicationId()).getSessionId(); + long activeSessionIdBefore = tester.applicationRepository().getActiveSession(tester.applicationId()).get().getSessionId(); assertEquals(tester.applicationId(), tester.tenant().getSessionRepository().getLocalSession(activeSessionIdBefore).getApplicationId()); deployment.get().activate(); - long activeSessionIdAfter = tester.applicationRepository().getActiveSession(tester.applicationId()).getSessionId(); + long activeSessionIdAfter = tester.applicationRepository().getActiveSession(tester.applicationId()).get().getSessionId(); assertEquals(activeSessionIdAfter, activeSessionIdBefore + 1); assertEquals(tester.applicationId(), tester.tenant().getSessionRepository().getLocalSession(activeSessionIdAfter).getApplicationId()); } diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/ApplicationContentHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/ApplicationContentHandlerTest.java index 1d891c0547c..052f39c9e1f 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/ApplicationContentHandlerTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/ApplicationContentHandlerTest.java @@ -105,7 +105,7 @@ public class ApplicationContentHandlerTest extends ContentHandlerTestBase { @Test public void require_that_get_does_not_set_write_flag() throws IOException { Tenant tenant1 = applicationRepository.getTenant(appId1); - Session session = applicationRepository.getActiveLocalSession(tenant1, appId1); + Session session = applicationRepository.getActiveLocalSession(tenant1, appId1).get(); assertContent("/test.txt", "foo\n"); assertEquals(Session.Status.ACTIVATE, session.getStatus()); } diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionActiveHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionActiveHandlerTest.java index ecb8d7603f6..f279d327a52 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionActiveHandlerTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionActiveHandlerTest.java @@ -135,7 +135,7 @@ public class SessionActiveHandlerTest { applicationRepository.prepare(sessionId, new PrepareParams.Builder().applicationId(applicationId()).build()); actResponse = handler.handle(createTestRequest(pathPrefix, HttpRequest.Method.PUT, Cmd.ACTIVE, sessionId, subPath)); Tenant tenant = applicationRepository.getTenant(applicationId()); - Session session = applicationRepository.getActiveLocalSession(tenant, applicationId()); + Session session = applicationRepository.getActiveLocalSession(tenant, applicationId()).get(); metaData = session.getMetaData(); this.sessionId = sessionId; } diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionContentHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionContentHandlerTest.java index ec96be0d0c8..790be6d45ba 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionContentHandlerTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionContentHandlerTest.java @@ -69,7 +69,7 @@ public class SessionContentHandlerTest extends ContentHandlerTestBase { .build(); applicationRepository.deploy(testApp, new PrepareParams.Builder().applicationId(applicationId()).build()); Tenant tenant = applicationRepository.getTenant(applicationId()); - sessionId = applicationRepository.getActiveLocalSession(tenant, applicationId()).getSessionId(); + sessionId = applicationRepository.getActiveLocalSession(tenant, applicationId()).get().getSessionId(); handler = createHandler(); pathPrefix = "/application/v2/tenant/" + tenantName + "/session/"; diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionPrepareHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionPrepareHandlerTest.java index 3d2e108a75e..0b8b142e3aa 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionPrepareHandlerTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionPrepareHandlerTest.java @@ -296,7 +296,7 @@ public class SessionPrepareHandlerTest extends SessionHandlerTest { "applicationName", applicationId().application().value())); applicationRepository.activate(tenantRepository.getTenant(tenant), sessionId, timeoutBudget, false); assertEquals(DockerImage.fromString(dockerImageRepository), - applicationRepository.getActiveSession(applicationId()).getDockerImageRepository().get()); + applicationRepository.getActiveSession(applicationId()).get().getDockerImageRepository().get()); } private Slime getData(HttpResponse response) throws IOException { diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionRepositoryTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionRepositoryTest.java index 150df8e303f..f128b71dd76 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionRepositoryTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionRepositoryTest.java @@ -335,7 +335,7 @@ public class SessionRepositoryTest { private long deploy(ApplicationId applicationId, File testApp) { applicationRepository.deploy(testApp, new PrepareParams.Builder().applicationId(applicationId).build()); - return applicationRepository.getActiveSession(applicationId).getSessionId(); + return applicationRepository.getActiveSession(applicationId).get().getSessionId(); } private static class MockModelFactory implements ModelFactory { |