diff options
author | gjoranv <gv@verizonmedia.com> | 2020-06-11 13:54:04 +0200 |
---|---|---|
committer | gjoranv <gv@verizonmedia.com> | 2020-06-11 13:54:04 +0200 |
commit | f68d1c77a67ef20cf4b8c08ba3534994010581ea (patch) | |
tree | 23818ae3faf42b5a40cf655ee2984c622c5f60f7 /configserver | |
parent | 641c6d9eaed3b163488984e59048122fb6f131b6 (diff) |
Remove duplicate TenantApplications arguments
.. by adding a method to return itself as a HostValidator
Diffstat (limited to 'configserver')
7 files changed, 12 insertions, 15 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/application/TenantApplications.java b/configserver/src/main/java/com/yahoo/vespa/config/server/application/TenantApplications.java index 9ed1e8ee88c..54d06deeaeb 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/application/TenantApplications.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/application/TenantApplications.java @@ -420,6 +420,10 @@ public class TenantApplications implements RequestHandler, ReloadHandler, HostVa reloadListener.verifyHostsAreAvailable(tenant, newHosts); } + public HostValidator<ApplicationId> getHostValidator() { + return this; + } + public HostRegistry<ApplicationId> getApplicationHostRegistry() { return hostRegistry; } diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/session/LocalSession.java b/configserver/src/main/java/com/yahoo/vespa/config/server/session/LocalSession.java index 56e32f7d802..b90f75906d7 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/session/LocalSession.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/session/LocalSession.java @@ -40,7 +40,6 @@ public class LocalSession extends Session { private final SessionPreparer sessionPreparer; private final File serverDBSessionDir; private final SessionZooKeeperClient sessionZooKeeperClient; - private final HostValidator<ApplicationId> hostValidator; /** * Create a session. This involves loading the application, validating it and distributing it. @@ -49,15 +48,13 @@ public class LocalSession extends Session { */ public LocalSession(TenantName tenant, long sessionId, SessionPreparer sessionPreparer, ApplicationPackage applicationPackage, SessionZooKeeperClient sessionZooKeeperClient, - File serverDBSessionDir, TenantApplications applicationRepo, - HostValidator<ApplicationId> hostValidator) { + File serverDBSessionDir, TenantApplications applicationRepo) { super(tenant, sessionId, sessionZooKeeperClient); this.serverDBSessionDir = serverDBSessionDir; this.applicationPackage = applicationPackage; this.sessionZooKeeperClient = sessionZooKeeperClient; this.applicationRepo = applicationRepo; this.sessionPreparer = sessionPreparer; - this.hostValidator = hostValidator; } public ConfigChangeActions prepare(DeployLogger logger, @@ -68,7 +65,7 @@ public class LocalSession extends Session { applicationRepo.createApplication(params.getApplicationId()); // TODO jvenstad: This is wrong, but it has to be done now, since preparation can change the application ID of a session :( logger.log(Level.FINE, "Created application " + params.getApplicationId()); Curator.CompletionWaiter waiter = zooKeeperClient.createPrepareWaiter(); - ConfigChangeActions actions = sessionPreparer.prepare(hostValidator, logger, params, + ConfigChangeActions actions = sessionPreparer.prepare(applicationRepo.getHostValidator(), logger, params, currentActiveApplicationSet, tenantPath, now, serverDBSessionDir, applicationPackage, sessionZooKeeperClient); setPrepared(); 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 c0d09cfba30..f2a867a239a 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 @@ -81,7 +81,6 @@ public class SessionRepository { private final MetricUpdater metrics; private final Curator.DirectoryCache directoryCache; private final TenantApplications applicationRepo; - private final HostValidator<ApplicationId> hostRegistry; private final SessionPreparer sessionPreparer; private final Path sessionsPath; private final TenantName tenantName; @@ -92,7 +91,6 @@ public class SessionRepository { TenantApplications applicationRepo, ReloadHandler reloadHandler, FlagSource flagSource, - HostValidator<ApplicationId> hostRegistry, SessionPreparer sessionPreparer) { this.tenantName = tenantName; this.componentRegistry = componentRegistry; @@ -104,7 +102,6 @@ public class SessionRepository { this.zkWatcherExecutor = command -> componentRegistry.getZkWatcherExecutor().execute(tenantName, command); this.tenantFileSystemDirs = new TenantFileSystemDirs(componentRegistry.getConfigServerDB(), tenantName); this.applicationRepo = applicationRepo; - this.hostRegistry = hostRegistry; this.sessionPreparer = sessionPreparer; this.distributeApplicationPackage = Flags.CONFIGSERVER_DISTRIBUTE_APPLICATION_PACKAGE.bindTo(flagSource); this.reloadHandler = reloadHandler; @@ -410,7 +407,7 @@ public class SessionRepository { sessionZKClient.createNewSession(clock.instant()); Curator.CompletionWaiter waiter = sessionZKClient.getUploadWaiter(); LocalSession session = new LocalSession(tenantName, sessionId, sessionPreparer, applicationPackage, sessionZKClient, - getSessionAppDir(sessionId), applicationRepo, hostRegistry); + getSessionAppDir(sessionId), applicationRepo); waiter.awaitCompletion(timeoutBudget.timeLeft()); return session; } @@ -469,7 +466,7 @@ public class SessionRepository { sessionId, currentlyActiveSessionId, false); SessionZooKeeperClient sessionZooKeeperClient = createSessionZooKeeperClient(getSessionPath(sessionId)); return new LocalSession(tenantName, sessionId, sessionPreparer, applicationPackage, sessionZooKeeperClient, - getSessionAppDir(sessionId), applicationRepo, hostRegistry); + getSessionAppDir(sessionId), applicationRepo); } catch (Exception e) { throw new RuntimeException("Error creating session " + sessionId, e); } @@ -499,7 +496,7 @@ public class SessionRepository { Path sessionIdPath = sessionsPath.append(String.valueOf(sessionId)); SessionZooKeeperClient sessionZKClient = createSessionZooKeeperClient(sessionIdPath); return new LocalSession(tenantName, sessionId, sessionPreparer, applicationPackage, sessionZKClient, - getSessionAppDir(sessionId), applicationRepo, hostRegistry); + getSessionAppDir(sessionId), applicationRepo); } /** diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRepository.java b/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRepository.java index 32e9f694027..304fbb6786a 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRepository.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/TenantRepository.java @@ -224,7 +224,6 @@ public class TenantRepository { SessionRepository sessionRepository = new SessionRepository(tenantName, componentRegistry, applicationRepo, reloadHandler, componentRegistry.getFlagSource(), - applicationRepo, componentRegistry.getSessionPreparer()); log.log(Level.INFO, "Creating tenant '" + tenantName + "'"); Tenant tenant = new Tenant(tenantName, sessionRepository, requestHandler, diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/SessionHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/SessionHandlerTest.java index 91a40bd6083..43d21e27a16 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/SessionHandlerTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/SessionHandlerTest.java @@ -96,7 +96,7 @@ public class SessionHandlerTest { private Optional<DockerImage> dockerImageRepository; public MockLocalSession(long sessionId, ApplicationPackage app) { - super(TenantName.defaultName(), sessionId, null, app, new MockSessionZKClient(app), null, null, new HostRegistry<>()); + super(TenantName.defaultName(), sessionId, null, app, new MockSessionZKClient(app), null, null); } public MockLocalSession(long sessionId, ApplicationPackage app, ApplicationId applicationId) { diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/session/LocalSessionTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/session/LocalSessionTest.java index b072f20414f..fa81b16be76 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/session/LocalSessionTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/session/LocalSessionTest.java @@ -140,7 +140,7 @@ public class LocalSessionTest { new TestComponentRegistry.Builder().curator(curator).build(), tenant); applications.createApplication(zkc.readApplicationId()); return new LocalSession(tenant, sessionId, preparer, FilesApplicationPackage.fromFile(testApp), - zkc, sessionDir, applications, new HostRegistry<>()); + zkc, sessionDir, applications); } private void doPrepare(LocalSession session) { 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 f73fb053649..1528c82188e 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 @@ -76,7 +76,7 @@ public class SessionRepositoryTest { TenantApplications applicationRepo = TenantApplications.create(globalComponentRegistry, tenantName); sessionRepository = new SessionRepository(tenantName, globalComponentRegistry, applicationRepo, applicationRepo, new InMemoryFlagSource(), - applicationRepo, globalComponentRegistry.getSessionPreparer()); + globalComponentRegistry.getSessionPreparer()); } @Test |