diff options
author | Harald Musum <musum@oath.com> | 2017-11-08 07:56:32 +0100 |
---|---|---|
committer | Harald Musum <musum@oath.com> | 2017-11-08 07:56:32 +0100 |
commit | 271d405951609b7ec3976aeb6169c683630b7e5e (patch) | |
tree | 124bee1110db5ebdba0b3bcee2a47da669028b1f /configserver | |
parent | 1cf79e2d108a14a77c9c378d478e469030ab00c6 (diff) |
Use constructor for tests and make sure it creates system tenants
Diffstat (limited to 'configserver')
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/tenant/Tenants.java | 12 | ||||
-rw-r--r-- | configserver/src/test/java/com/yahoo/vespa/config/server/deploy/DeployTester.java | 2 |
2 files changed, 10 insertions, 4 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/Tenants.java b/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/Tenants.java index 60200e34cdf..866d1563e3f 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/Tenants.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/tenant/Tenants.java @@ -108,6 +108,8 @@ public class Tenants implements ConnectionStateListener, PathChildrenCacheListen metricUpdater = metrics.getOrCreateMetricUpdater(Collections.emptyMap()); this.tenantListeners.add(globalComponentRegistry.getTenantListener()); curator.create(tenantsPath); + createSystemTenants(globalComponentRegistry.getConfigserverConfig()); + createTenants(); this.directoryCache = curator.createDirectoryCache(tenantsPath.getAbsolute(), false, false, pathChildrenExecutor); this.tenants.putAll(addTenants(tenants)); } @@ -147,7 +149,7 @@ public class Tenants implements ConnectionStateListener, PathChildrenCacheListen return tenants; } - synchronized void createTenants() throws Exception { + synchronized void createTenants() { Set<TenantName> allTenants = readTenantsFromZooKeeper(); log.log(LogLevel.DEBUG, "Create tenants, tenants found in zookeeper: " + allTenants); checkForRemovedTenants(allTenants); @@ -167,7 +169,7 @@ public class Tenants implements ConnectionStateListener, PathChildrenCacheListen } } - private void checkForAddedTenants(Set<TenantName> newTenants) throws Exception { + private void checkForAddedTenants(Set<TenantName> newTenants) { ExecutorService executor = Executors.newFixedThreadPool(globalComponentRegistry.getConfigserverConfig().numParallelTenantLoaders()); for (TenantName tenantName : newTenants) { // Note: the http handler will check if the tenant exists, and throw accordingly @@ -178,7 +180,11 @@ public class Tenants implements ConnectionStateListener, PathChildrenCacheListen } } executor.shutdown(); - executor.awaitTermination(365, TimeUnit.DAYS); // Timeout should never happen + try { + executor.awaitTermination(365, TimeUnit.DAYS); // Timeout should never happen + } catch (InterruptedException e) { + throw new RuntimeException("Executor for creating tenants did not terminate within timeout"); + } } private void createTenant(TenantName tenantName) { 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 64932700173..43fd8a92189 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 @@ -103,7 +103,7 @@ public class DeployTester { configserverConfig, clock); try { this.testApp = new File(appPath); - this.tenants = new Tenants(componentRegistry, metrics); + this.tenants = new Tenants(componentRegistry, metrics, Collections.emptySet()); } catch (Exception e) { throw new IllegalArgumentException(e); |