diff options
4 files changed, 13 insertions, 5 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/admin/AdminModel.java b/config-model/src/main/java/com/yahoo/config/model/admin/AdminModel.java index daf426517b8..4ae9834b87f 100644 --- a/config-model/src/main/java/com/yahoo/config/model/admin/AdminModel.java +++ b/config-model/src/main/java/com/yahoo/config/model/admin/AdminModel.java @@ -77,7 +77,7 @@ public class AdminModel extends ConfigModel { @Override public void doBuild(AdminModel model, Element adminElement, ConfigModelContext modelContext) { - if (modelContext.getDeployState().isHosted()) { // admin v2 is used on hosted: Build a default V4 instead + if (modelContext.getDeployState().isHosted()) { // admin v4 is used on hosted: Build a default V4 instead new BuilderV4().doBuild(model, adminElement, modelContext); return; } @@ -87,6 +87,7 @@ public class AdminModel extends ConfigModel { properties.multitenant(), properties.configServerSpecs()); model.admin = domBuilder.build(modelContext.getDeployState(), parent, adminElement); + // TODO: Is required since other models depend on admin. if (parent instanceof ApplicationConfigProducerRoot) { ((ApplicationConfigProducerRoot)parent).setupAdmin(model.admin); @@ -109,7 +110,7 @@ public class AdminModel extends ConfigModel { @Override public void doBuild(AdminModel model, Element adminElement, ConfigModelContext modelContext) { - AbstractConfigProducer parent = modelContext.getParentProducer(); + AbstractConfigProducer<?> parent = modelContext.getParentProducer(); ModelContext.Properties properties = modelContext.getDeployState().getProperties(); DomAdminV4Builder domBuilder = new DomAdminV4Builder(modelContext, properties.multitenant(), diff --git a/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java b/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java index 1d00580f390..2fcb9632357 100644 --- a/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java +++ b/config-model/src/test/java/com/yahoo/config/model/provision/ModelProvisioningTest.java @@ -1617,8 +1617,12 @@ public class ModelProvisioningTest { tester.addHosts(3); VespaModel model = tester.createModel(xmlWithNodes, true); - assertEquals("Nodes in container cluster", 1, model.getContainerClusters().get("container1").getContainers().size()); - assertEquals("Nodes in content cluster (downscaled)", 1, model.getContentClusters().get("content").getRootGroup().getNodes().size()); + assertEquals("Nodes in container cluster", 1, + model.getContainerClusters().get("container1").getContainers().size()); + assertEquals("Nodes in content cluster (downscaled)", 1, + model.getContentClusters().get("content").getRootGroup().getNodes().size()); + + assertEquals(1, model.getAdmin().getSlobroks().size()); model.getConfig(new StorStatusConfig.Builder(), "default"); StorageCluster storage = model.getContentClusters().get("content").getStorageCluster(); diff --git a/config/src/main/java/com/yahoo/vespa/config/JRTConnectionPool.java b/config/src/main/java/com/yahoo/vespa/config/JRTConnectionPool.java index 048c82b1bde..14385cbc90e 100644 --- a/config/src/main/java/com/yahoo/vespa/config/JRTConnectionPool.java +++ b/config/src/main/java/com/yahoo/vespa/config/JRTConnectionPool.java @@ -41,6 +41,7 @@ public class JRTConnectionPool implements ConnectionPool { } public JRTConnectionPool(ConfigSourceSet sourceSet, Supervisor supervisor) { + if (sourceSet.getSources().isEmpty()) throw new IllegalArgumentException("sourceSet cannot be empty"); this.supervisor = supervisor; this.poolName = supervisor.transport().getName(); addSources(sourceSet); 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 78f61feed85..5314f95a5b9 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 @@ -33,6 +33,7 @@ import static com.yahoo.vespa.config.server.filedistribution.FileDistributionUti * @author gjoranv */ public class ApplicationPackageMaintainer extends ConfigServerMaintainer { + private static final Logger log = Logger.getLogger(ApplicationPackageMaintainer.class.getName()); private final ApplicationRepository applicationRepository; @@ -40,7 +41,6 @@ public class ApplicationPackageMaintainer extends ConfigServerMaintainer { private final ConfigserverConfig configserverConfig; private final Supervisor supervisor; - ApplicationPackageMaintainer(ApplicationRepository applicationRepository, Curator curator, Duration interval, @@ -54,6 +54,8 @@ public class ApplicationPackageMaintainer extends ConfigServerMaintainer { @Override protected double maintain() { + if (getOtherConfigServersInCluster(configserverConfig).isEmpty()) return 1.0; // Nothing to do + int attempts = 0; int failures = 0; |