diff options
Diffstat (limited to 'configserver')
8 files changed, 19 insertions, 33 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/GlobalComponentRegistry.java b/configserver/src/main/java/com/yahoo/vespa/config/server/GlobalComponentRegistry.java index 6dd1d1eedd5..94e4255168e 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/GlobalComponentRegistry.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/GlobalComponentRegistry.java @@ -26,7 +26,6 @@ public interface GlobalComponentRegistry { TenantListener getTenantListener(); ReloadListener getReloadListener(); ConfigDefinitionRepo getStaticConfigDefinitionRepo(); - PermanentApplicationPackage getPermanentApplicationPackage(); ModelFactoryRegistry getModelFactoryRegistry(); Optional<Provisioner> getHostProvisioner(); Zone getZone(); diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistry.java b/configserver/src/main/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistry.java index 0103362e244..f7e24423490 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistry.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistry.java @@ -8,7 +8,6 @@ import com.yahoo.config.model.api.ConfigDefinitionRepo; import com.yahoo.config.provision.Provisioner; import com.yahoo.config.provision.Zone; import com.yahoo.container.jdisc.secretstore.SecretStore; -import com.yahoo.vespa.config.server.application.PermanentApplicationPackage; import com.yahoo.vespa.config.server.modelfactory.ModelFactoryRegistry; import com.yahoo.vespa.config.server.provision.HostProvisionerProvider; import com.yahoo.vespa.config.server.rpc.RpcServer; @@ -32,7 +31,6 @@ public class InjectedGlobalComponentRegistry implements GlobalComponentRegistry private final RpcServer rpcServer; private final ConfigserverConfig configserverConfig; private final ConfigDefinitionRepo staticConfigDefinitionRepo; - private final PermanentApplicationPackage permanentApplicationPackage; private final Optional<Provisioner> hostProvisioner; private final Zone zone; private final ConfigServerDB configServerDB; @@ -46,7 +44,6 @@ public class InjectedGlobalComponentRegistry implements GlobalComponentRegistry RpcServer rpcServer, ConfigserverConfig configserverConfig, ConfigDefinitionRepo staticConfigDefinitionRepo, - PermanentApplicationPackage permanentApplicationPackage, HostProvisionerProvider hostProvisionerProvider, Zone zone, ConfigServerDB configServerDB, @@ -56,7 +53,6 @@ public class InjectedGlobalComponentRegistry implements GlobalComponentRegistry this.rpcServer = rpcServer; this.configserverConfig = configserverConfig; this.staticConfigDefinitionRepo = staticConfigDefinitionRepo; - this.permanentApplicationPackage = permanentApplicationPackage; this.hostProvisioner = hostProvisionerProvider.getHostProvisioner(); this.zone = zone; this.configServerDB = configServerDB; @@ -74,8 +70,6 @@ public class InjectedGlobalComponentRegistry implements GlobalComponentRegistry @Override public ConfigDefinitionRepo getStaticConfigDefinitionRepo() { return staticConfigDefinitionRepo; } @Override - public PermanentApplicationPackage getPermanentApplicationPackage() { return permanentApplicationPackage; } - @Override public ModelFactoryRegistry getModelFactoryRegistry() { return modelFactoryRegistry; } @Override diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ActivatedModelsBuilder.java b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ActivatedModelsBuilder.java index 8f547c5220e..4854bfd5f15 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ActivatedModelsBuilder.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/modelfactory/ActivatedModelsBuilder.java @@ -67,7 +67,8 @@ public class ActivatedModelsBuilder extends ModelsBuilder<Application> { Optional<ApplicationSet> currentActiveApplicationSet, GlobalComponentRegistry globalComponentRegistry, Curator curator, - Metrics metrics) { + Metrics metrics, + PermanentApplicationPackage permanentApplicationPackage) { super(globalComponentRegistry.getModelFactoryRegistry(), globalComponentRegistry.getConfigserverConfig(), globalComponentRegistry.getZone(), @@ -76,7 +77,7 @@ public class ActivatedModelsBuilder extends ModelsBuilder<Application> { this.applicationGeneration = applicationGeneration; this.zkClient = zkClient; this.currentActiveApplicationSet = currentActiveApplicationSet; - this.permanentApplicationPackage = globalComponentRegistry.getPermanentApplicationPackage(); + this.permanentApplicationPackage = permanentApplicationPackage; this.configDefinitionRepo = globalComponentRegistry.getStaticConfigDefinitionRepo(); this.metrics = metrics; this.curator = curator; 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 d89c943366f..c244274c49f 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 @@ -2,7 +2,6 @@ package com.yahoo.vespa.config.server.session; import com.google.common.util.concurrent.UncheckedTimeoutException; -import com.google.inject.Inject; import com.yahoo.cloud.config.ConfigserverConfig; import com.yahoo.component.Version; import com.yahoo.component.Vtag; 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 be048633bca..7603edeb4d4 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 @@ -21,6 +21,7 @@ import com.yahoo.transaction.Transaction; import com.yahoo.vespa.config.server.GlobalComponentRegistry; import com.yahoo.vespa.config.server.TimeoutBudget; import com.yahoo.vespa.config.server.application.ApplicationSet; +import com.yahoo.vespa.config.server.application.PermanentApplicationPackage; import com.yahoo.vespa.config.server.application.TenantApplications; import com.yahoo.vespa.config.server.configchange.ConfigChangeActions; import com.yahoo.vespa.config.server.deploy.TenantFileSystemDirs; @@ -82,6 +83,7 @@ public class SessionRepository { private final Clock clock; private final Curator curator; private final Executor zkWatcherExecutor; + private final PermanentApplicationPackage permanentApplicationPackage; private final TenantFileSystemDirs tenantFileSystemDirs; private final Metrics metrics; private final MetricUpdater metricUpdater; @@ -100,7 +102,8 @@ public class SessionRepository { SessionPreparer sessionPreparer, Curator curator, Metrics metrics, - StripedExecutor<TenantName> zkWatcherExecutor) { + StripedExecutor<TenantName> zkWatcherExecutor, + PermanentApplicationPackage permanentApplicationPackage) { this.tenantName = tenantName; this.componentRegistry = componentRegistry; this.configCurator = ConfigCurator.create(curator); @@ -110,6 +113,7 @@ public class SessionRepository { this.curator = curator; this.sessionLifetime = Duration.ofSeconds(componentRegistry.getConfigserverConfig().sessionLifetime()); this.zkWatcherExecutor = command -> zkWatcherExecutor.execute(tenantName, command); + this.permanentApplicationPackage = permanentApplicationPackage; this.tenantFileSystemDirs = new TenantFileSystemDirs(componentRegistry.getConfigServerDB(), tenantName); this.applicationRepo = applicationRepo; this.sessionPreparer = sessionPreparer; @@ -435,7 +439,8 @@ public class SessionRepository { previousApplicationSet, componentRegistry, curator, - metrics); + metrics, + permanentApplicationPackage); // Read hosts allocated on the config server instance which created this SettableOptional<AllocatedHosts> allocatedHosts = new SettableOptional<>(applicationPackage.getAllocatedHosts()); 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 a2f39b5a20a..691327fe316 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 @@ -13,6 +13,7 @@ import com.yahoo.path.Path; import com.yahoo.text.Utf8; import com.yahoo.transaction.Transaction; import com.yahoo.vespa.config.server.GlobalComponentRegistry; +import com.yahoo.vespa.config.server.application.PermanentApplicationPackage; import com.yahoo.vespa.config.server.application.TenantApplications; import com.yahoo.vespa.config.server.deploy.TenantFileSystemDirs; import com.yahoo.vespa.config.server.filedistribution.FileDistributionFactory; @@ -283,10 +284,11 @@ public class TenantRepository { hostRegistry, new TenantFileSystemDirs(componentRegistry.getConfigServerDB(), tenantName), componentRegistry.getClock()); + PermanentApplicationPackage permanentApplicationPackage = new PermanentApplicationPackage(componentRegistry.getConfigserverConfig()); SessionPreparer sessionPreparer = new SessionPreparer(componentRegistry.getModelFactoryRegistry(), fileDistributionFactory, HostProvisionerProvider.from(componentRegistry.getHostProvisioner()), - componentRegistry.getPermanentApplicationPackage(), + permanentApplicationPackage, componentRegistry.getConfigserverConfig(), componentRegistry.getStaticConfigDefinitionRepo(), curator, @@ -299,7 +301,8 @@ public class TenantRepository { sessionPreparer, curator, metrics, - zkWatcherExecutor); + zkWatcherExecutor, + permanentApplicationPackage); log.log(Level.INFO, "Adding tenant '" + tenantName + "'" + ", created " + created); Tenant tenant = new Tenant(tenantName, sessionRepository, applicationRepo, applicationRepo, created); notifyNewTenant(tenant); diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistryTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistryTest.java index 6b92e4f72f3..4a914a7e84f 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistryTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/InjectedGlobalComponentRegistryTest.java @@ -5,7 +5,6 @@ import com.yahoo.cloud.config.ConfigserverConfig; import com.yahoo.config.model.NullConfigModelRegistry; import com.yahoo.config.model.api.ConfigDefinitionRepo; import com.yahoo.config.provision.Zone; -import com.yahoo.vespa.config.server.application.PermanentApplicationPackage; import com.yahoo.vespa.config.server.filedistribution.FileServer; import com.yahoo.vespa.config.server.host.ConfigRequestHostLivenessTracker; import com.yahoo.vespa.config.server.host.HostRegistry; @@ -23,7 +22,7 @@ import org.junit.Test; import org.junit.rules.TemporaryFolder; import java.io.IOException; -import java.util.Collections; +import java.util.List; import static org.hamcrest.Matchers.is; import static org.junit.Assert.assertThat; @@ -37,7 +36,6 @@ public class InjectedGlobalComponentRegistryTest { private ConfigserverConfig configserverConfig; private RpcServer rpcServer; private ConfigDefinitionRepo defRepo; - private PermanentApplicationPackage permanentApplicationPackage; private GlobalComponentRegistry globalComponentRegistry; private ModelFactoryRegistry modelFactoryRegistry; private Zone zone; @@ -47,7 +45,7 @@ public class InjectedGlobalComponentRegistryTest { @Before public void setupRegistry() throws IOException { - modelFactoryRegistry = new ModelFactoryRegistry(Collections.singletonList(new VespaModelFactory(new NullConfigModelRegistry()))); + modelFactoryRegistry = new ModelFactoryRegistry(List.of(new VespaModelFactory(new NullConfigModelRegistry()))); configserverConfig = new ConfigserverConfig( new ConfigserverConfig.Builder() .configServerDBDir(temporaryFolder.newFolder("serverdb").getAbsolutePath()) @@ -58,12 +56,11 @@ public class InjectedGlobalComponentRegistryTest { new FileServer(temporaryFolder.newFolder("filereferences")), new NoopRpcAuthorizer(), new RpcRequestHandlerProvider()); defRepo = new StaticConfigDefinitionRepo(); - permanentApplicationPackage = new PermanentApplicationPackage(configserverConfig); HostProvisionerProvider hostProvisionerProvider = HostProvisionerProvider.withProvisioner(new MockProvisioner()); zone = Zone.defaultZone(); globalComponentRegistry = new InjectedGlobalComponentRegistry(modelFactoryRegistry, rpcServer, configserverConfig, defRepo, - permanentApplicationPackage, hostProvisionerProvider, zone, + hostProvisionerProvider, zone, new ConfigServerDB(configserverConfig), new InMemoryFlagSource(), new MockSecretStore()); } @@ -75,8 +72,7 @@ public class InjectedGlobalComponentRegistryTest { assertThat(globalComponentRegistry.getReloadListener().hashCode(), is(rpcServer.hashCode())); assertThat(globalComponentRegistry.getTenantListener().hashCode(), is(rpcServer.hashCode())); assertThat(globalComponentRegistry.getStaticConfigDefinitionRepo(), is(defRepo)); - assertThat(globalComponentRegistry.getPermanentApplicationPackage(), is(permanentApplicationPackage)); - assertThat(globalComponentRegistry.getZone(), is (zone)); + assertThat(globalComponentRegistry.getZone(), is(zone)); assertTrue(globalComponentRegistry.getHostProvisioner().isPresent()); } diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java b/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java index 9cc9202791f..733b806dfe2 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java @@ -8,9 +8,7 @@ import com.yahoo.config.model.api.ConfigDefinitionRepo; import com.yahoo.config.provision.Provisioner; import com.yahoo.config.provision.Zone; import com.yahoo.container.jdisc.secretstore.SecretStore; -import com.yahoo.vespa.config.server.application.PermanentApplicationPackage; import com.yahoo.vespa.config.server.application.TenantApplicationsTest; -import com.yahoo.vespa.config.server.filedistribution.FileDistributionFactory; import com.yahoo.vespa.config.server.modelfactory.ModelFactoryRegistry; import com.yahoo.vespa.config.server.tenant.MockTenantListener; import com.yahoo.vespa.config.server.tenant.TenantListener; @@ -35,7 +33,6 @@ public class TestComponentRegistry implements GlobalComponentRegistry { private final ConfigDefinitionRepo defRepo; private final ReloadListener reloadListener; private final TenantListener tenantListener; - private final PermanentApplicationPackage permanentApplicationPackage; private final ModelFactoryRegistry modelFactoryRegistry; private final Optional<Provisioner> hostProvisioner; private final Zone zone; @@ -46,7 +43,6 @@ public class TestComponentRegistry implements GlobalComponentRegistry { private final FlagSource flagSource; private TestComponentRegistry(ModelFactoryRegistry modelFactoryRegistry, - PermanentApplicationPackage permanentApplicationPackage, ConfigserverConfig configserverConfig, Optional<Provisioner> hostProvisioner, ConfigDefinitionRepo defRepo, @@ -60,7 +56,6 @@ public class TestComponentRegistry implements GlobalComponentRegistry { this.reloadListener = reloadListener; this.tenantListener = tenantListener; this.defRepo = defRepo; - this.permanentApplicationPackage = permanentApplicationPackage; this.modelFactoryRegistry = modelFactoryRegistry; this.hostProvisioner = hostProvisioner; this.zone = zone; @@ -80,7 +75,6 @@ public class TestComponentRegistry implements GlobalComponentRegistry { private ConfigDefinitionRepo defRepo = new StaticConfigDefinitionRepo(); private ReloadListener reloadListener = new TenantApplicationsTest.MockReloadListener(); private final MockTenantListener tenantListener = new MockTenantListener(); - private final Optional<FileDistributionFactory> fileDistributionFactory = Optional.empty(); private ModelFactoryRegistry modelFactoryRegistry = new ModelFactoryRegistry(Collections.singletonList(new VespaModelFactory(new NullConfigModelRegistry()))); private Optional<Provisioner> hostProvisioner = Optional.empty(); private Zone zone = Zone.defaultZone(); @@ -128,11 +122,8 @@ public class TestComponentRegistry implements GlobalComponentRegistry { } public TestComponentRegistry build() { - final PermanentApplicationPackage permApp = Optional.<PermanentApplicationPackage>empty() - .orElse(new PermanentApplicationPackage(configserverConfig)); SecretStore secretStore = new MockSecretStore(); return new TestComponentRegistry(modelFactoryRegistry, - permApp, configserverConfig, hostProvisioner, defRepo, @@ -154,8 +145,6 @@ public class TestComponentRegistry implements GlobalComponentRegistry { @Override public ConfigDefinitionRepo getStaticConfigDefinitionRepo() { return defRepo; } @Override - public PermanentApplicationPackage getPermanentApplicationPackage() { return permanentApplicationPackage; } - @Override public ModelFactoryRegistry getModelFactoryRegistry() { return modelFactoryRegistry; } @Override public Optional<Provisioner> getHostProvisioner() { |