summaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2020-01-13 16:53:08 +0100
committerGitHub <noreply@github.com>2020-01-13 16:53:08 +0100
commit7250e7a5cfafaa8e52a56c7990437be740761093 (patch)
tree8e7296a193552b8c99b4ab57a1fe08791e7d7bda /node-repository
parentd220c3dd187e908afa015d5990e6dbbeb2e9876b (diff)
parente22bb6f5ca207e897dcde8a65416f46f2a039583 (diff)
Merge pull request #11770 from vespa-engine/mpolden/restore-content-combined-substition
Revert "Remove unnecessary content/combined substitution"
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/ProvisioningTest.java29
1 files changed, 29 insertions, 0 deletions
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/ProvisioningTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/ProvisioningTest.java
index a54afd1c229..b4e8b2266fb 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/ProvisioningTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/ProvisioningTest.java
@@ -625,6 +625,35 @@ public class ProvisioningTest {
tester.activate(application, state.allHosts);
}
+ @Test
+ public void change_to_combined_cluster_does_not_change_node_allocation() {
+ var tester = new ProvisioningTester.Builder().zone(new Zone(Environment.prod, RegionName.from("us-east"))).build();
+ var application = tester.makeApplicationId();
+
+ tester.makeReadyNodes(4, defaultResources);
+
+ // Application allocates two content nodes initially. This is the old behaviour where combined clusters has type
+ // content
+ ClusterSpec cluster = ClusterSpec.request(ClusterSpec.Type.content,
+ ClusterSpec.Id.from("combined"),
+ Version.fromString("1.2.3"),
+ false);
+ var initialNodes = tester.activate(application, tester.prepare(application, cluster,
+ Capacity.fromCount(2, defaultResources, false, false),
+ 1));
+
+ // Application is redeployed with cluster type combined
+ cluster = ClusterSpec.request(ClusterSpec.Type.combined,
+ ClusterSpec.Id.from("combined"),
+ Version.fromString("1.2.3"),
+ false);
+ var newNodes = tester.activate(application, tester.prepare(application, cluster,
+ Capacity.fromCount(2, defaultResources, false, false),
+ 1));
+
+ assertEquals("Node allocation remains the same", initialNodes, newNodes);
+ }
+
private SystemState prepare(ApplicationId application, int container0Size, int container1Size, int content0Size,
int content1Size, NodeResources flavor, ProvisioningTester tester) {
return prepare(application, container0Size, container1Size, content0Size, content1Size, flavor,