diff options
author | Harald Musum <musum@verizonmedia.com> | 2020-07-28 15:44:11 +0200 |
---|---|---|
committer | Harald Musum <musum@verizonmedia.com> | 2020-07-28 15:44:11 +0200 |
commit | 42c483f2e3cb9d001e79e7f4846d60cc3c0fb1bc (patch) | |
tree | 683352a145ca701fe79d8e93695e928db29f3070 /configserver | |
parent | c1dd2c3224844f4460269e4e0c6c36155e81d1e7 (diff) |
Let SessionPreparer return result instead of only ConfigChangeActions
Diffstat (limited to 'configserver')
4 files changed, 19 insertions, 17 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java index b6b0ac45bb5..35bbc1a8233 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/session/SessionPreparer.java @@ -120,10 +120,10 @@ public class SessionPreparer { * @param tenantPath Zookeeper path for the tenant for this session * @return the config change actions that must be done to handle the activation of the models prepared. */ - public ConfigChangeActions prepare(HostValidator<ApplicationId> hostValidator, DeployLogger logger, PrepareParams params, - Optional<ApplicationSet> currentActiveApplicationSet, Path tenantPath, - Instant now, File serverDbSessionDir, ApplicationPackage applicationPackage, - SessionZooKeeperClient sessionZooKeeperClient) { + public PrepareResult prepare(HostValidator<ApplicationId> hostValidator, DeployLogger logger, PrepareParams params, + Optional<ApplicationSet> currentActiveApplicationSet, Path tenantPath, + Instant now, File serverDbSessionDir, ApplicationPackage applicationPackage, + SessionZooKeeperClient sessionZooKeeperClient) { Preparation preparation = new Preparation(hostValidator, logger, params, currentActiveApplicationSet, tenantPath, serverDbSessionDir, applicationPackage, sessionZooKeeperClient); @@ -313,8 +313,8 @@ public class SessionPreparer { checkTimeout("distribute files"); } - ConfigChangeActions result() { - return prepareResult.getConfigChangeActions(); + PrepareResult result() { + return prepareResult; } private List<ContainerEndpoint> readEndpointsIfNull(List<ContainerEndpoint> endpoints) { @@ -352,7 +352,7 @@ public class SessionPreparer { } /** The result of preparation over all model versions */ - private static class PrepareResult { + static class PrepareResult { private final AllocatedHosts allocatedHosts; private final ImmutableList<PreparedModelsBuilder.PreparedModelResult> results; 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 00e4005e771..98620877b1f 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 @@ -164,7 +164,8 @@ public class SessionRepository { ConfigChangeActions actions = sessionPreparer.prepare(applicationRepo.getHostValidator(), logger, params, currentActiveApplicationSet, tenantPath, now, getSessionAppDir(sessionId), - session.getApplicationPackage(), sessionZooKeeperClient); + session.getApplicationPackage(), sessionZooKeeperClient) + .getConfigChangeActions(); session.setPrepared(); waiter.awaitCompletion(params.getTimeoutBudget().timeLeft()); return actions; diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java index 46b8754ebe0..72bed784195 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionPreparerTest.java @@ -105,7 +105,7 @@ public class SessionPreparerTest { curator = new MockCurator(); configCurator = ConfigCurator.create(curator); componentRegistry = new TestComponentRegistry.Builder().curator(curator).build(); - fileDistributionFactory = (MockFileDistributionFactory)componentRegistry.getFileDistributionProvider(); + fileDistributionFactory = (MockFileDistributionFactory)componentRegistry.getFileDistributionFactory(); preparer = createPreparer(); } @@ -123,7 +123,7 @@ public class SessionPreparerTest { HostProvisionerProvider hostProvisionerProvider) { return new SessionPreparer( modelFactoryRegistry, - componentRegistry.getFileDistributionProvider(), + componentRegistry.getFileDistributionFactory(), hostProvisionerProvider, new PermanentApplicationPackage(componentRegistry.getConfigserverConfig()), componentRegistry.getConfigserverConfig(), diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionTest.java index 5ae5910d827..1dcd63e8d9f 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/session/SessionTest.java @@ -3,17 +3,18 @@ package com.yahoo.vespa.config.server.session; import com.yahoo.config.application.api.ApplicationPackage; import com.yahoo.config.application.api.DeployLogger; +import com.yahoo.config.provision.AllocatedHosts; import com.yahoo.config.provision.ApplicationId; import com.yahoo.path.Path; import com.yahoo.vespa.config.server.application.ApplicationSet; -import com.yahoo.vespa.config.server.configchange.ConfigChangeActions; import com.yahoo.vespa.config.server.host.HostValidator; import com.yahoo.vespa.curator.mock.MockCurator; import java.io.File; import java.time.Instant; -import java.util.ArrayList; +import java.util.List; import java.util.Optional; +import java.util.Set; /** * @author Ulf Lilleengen @@ -28,12 +29,12 @@ public class SessionTest { } @Override - public ConfigChangeActions prepare(HostValidator<ApplicationId> hostValidator, DeployLogger logger, PrepareParams params, - Optional<ApplicationSet> currentActiveApplicationSet, Path tenantPath, - Instant now, File serverDbSessionDir, ApplicationPackage applicationPackage, - SessionZooKeeperClient sessionZooKeeperClient) { + public PrepareResult prepare(HostValidator<ApplicationId> hostValidator, DeployLogger logger, PrepareParams params, + Optional<ApplicationSet> currentActiveApplicationSet, Path tenantPath, + Instant now, File serverDbSessionDir, ApplicationPackage applicationPackage, + SessionZooKeeperClient sessionZooKeeperClient) { isPrepared = true; - return new ConfigChangeActions(new ArrayList<>()); + return new PrepareResult(AllocatedHosts.withHosts(Set.of()), List.of()); } } |