summaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorHarald Musum <musum@yahooinc.com>2022-02-22 09:10:14 +0100
committerHarald Musum <musum@yahooinc.com>2022-02-22 09:10:14 +0100
commit9552bae8cb180860684fde02a13f382a5cee6068 (patch)
treeaaad50363562a0c3cf859b10df24905b2933cc99 /configserver
parentdc5882d2695456341d77a326b84a2df0464bec47 (diff)
Use Optional when returning session
No functional changes
Diffstat (limited to 'configserver')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java65
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/ApplicationPackageMaintainer.java10
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionRepository.java7
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java21
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/deploy/DeployTester.java9
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/deploy/HostedDeployTest.java4
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/deploy/RedeployTest.java4
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/ApplicationContentHandlerTest.java2
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionActiveHandlerTest.java2
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionContentHandlerTest.java2
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/http/v2/SessionPrepareHandlerTest.java2
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionRepositoryTest.java2
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 {