From 909ca348036664a984ed9928651e93dbb904252e Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Thu, 15 Sep 2022 09:55:26 +0200 Subject: Add note about zookeeper server address --- .../com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'clustercontroller-core') diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java index cd36bf1eb37..9fc8d641669 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java @@ -104,6 +104,7 @@ public abstract class FleetControllerTest implements Waiter { slobrok = new Slobrok(); if (builder.zooKeeperServerAddress() != null) { zooKeeperServer = new ZooKeeperTestServer(); + // Need to set zookeeper address again, as port number is not known until ZooKeeperTestServer has been created builder.setZooKeeperServerAddress(zooKeeperServer.getAddress()); log.log(Level.FINE, "Set up new zookeeper server at " + zooKeeperServer.getAddress()); } @@ -158,7 +159,7 @@ public abstract class FleetControllerTest implements Waiter { return options; } - void stopFleetController() throws Exception { + void stopFleetController() { fleetControllers.forEach(f -> { try { f.shutdown(); -- cgit v1.2.3 From 8e787fdca73861caee7a7d7905fa4545ea39a6b5 Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Thu, 15 Sep 2022 09:55:46 +0200 Subject: Simplify --- .../com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'clustercontroller-core') diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java index 9fc8d641669..4fff3023411 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java @@ -151,11 +151,7 @@ public abstract class FleetControllerTest implements Waiter { protected FleetControllerOptions setUpFleetController(boolean useFakeTimer, FleetControllerOptions.Builder builder) throws Exception { if (slobrok == null) setUpSystem(builder); options = builder.build(); - if (fleetControllers.isEmpty()) { - fleetControllers.add(createFleetController(useFakeTimer, options)); - } else { - throw new Exception("called setUpFleetcontroller but it was already setup"); - } + startFleetController(useFakeTimer); return options; } -- cgit v1.2.3 From 886bb1426b970a7bfcf032a5053c68c28480ab2e Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Thu, 15 Sep 2022 09:56:00 +0200 Subject: Simplify --- .../clustercontroller/core/StateChangeTest.java | 46 +++++++++++----------- 1 file changed, 23 insertions(+), 23 deletions(-) (limited to 'clustercontroller-core') diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/StateChangeTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/StateChangeTest.java index af6e2d2b104..18691fc8747 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/StateChangeTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/StateChangeTest.java @@ -105,7 +105,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testNormalStartup() throws Exception { - FleetControllerOptions.Builder options = defaultOptions("mycluster", createNodes(10)); + FleetControllerOptions.Builder options = defaultOptions(); options.setMaxInitProgressTime(50000); initialize(options.build()); @@ -177,7 +177,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testNodeGoingDownAndUp() throws Exception { - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)) + FleetControllerOptions.Builder builder = defaultOptions() .setNodeStateRequestTimeoutMS(60 * 60 * 1000) .setMinTimeBetweenNewSystemStates(0) .setMaxInitProgressTime(50000) @@ -267,7 +267,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testNodeGoingDownAndUpNotifying() throws Exception { // Same test as above, but node manages to notify why it is going down first. - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)) + FleetControllerOptions.Builder builder = defaultOptions() .setNodeStateRequestTimeoutMS(60 * 60 * 1000) .setMaxSlobrokDisconnectGracePeriod(100000); @@ -338,7 +338,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testNodeGoingDownAndUpFast() throws Exception { - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)) + FleetControllerOptions.Builder builder = defaultOptions() .setMaxSlobrokDisconnectGracePeriod(60 * 1000); initialize(builder.build()); @@ -379,7 +379,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testMaintenanceWhileNormalStorageNodeRestart() throws Exception { - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)) + FleetControllerOptions.Builder builder = defaultOptions() .setMaxSlobrokDisconnectGracePeriod(60 * 1000); initialize(builder.build()); @@ -520,7 +520,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testDownNodeInitializing() throws Exception { // Actually report initializing state if node has been down steadily for a while - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)) + FleetControllerOptions.Builder builder = defaultOptions() .setMaxTransitionTime(NodeType.STORAGE, 5000) .setMaxInitProgressTime(5000) .setStableStateTimePeriod(20000) @@ -583,7 +583,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testNodeInitializationStalled() throws Exception { // Node should eventually be marked down, and not become initializing next time, but stay down until up - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)) + FleetControllerOptions.Builder builder = defaultOptions() .setMaxTransitionTime(NodeType.STORAGE, 5000) .setMaxInitProgressTime(5000) .setStableStateTimePeriod(1000000) @@ -669,7 +669,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testBackwardsInitializationProgress() throws Exception { // Same as stalled. Mark down, keep down until up - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)); + FleetControllerOptions.Builder builder = defaultOptions(); builder.setMaxTransitionTime(NodeType.STORAGE, 5000); builder.setMaxInitProgressTime(5000); builder.setStableStateTimePeriod(1000000); @@ -712,7 +712,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testNodeGoingDownWhileInitializing() throws Exception { // Same as stalled. Mark down, keep down until up - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)) + FleetControllerOptions.Builder builder = defaultOptions() .setMaxTransitionTime(NodeType.STORAGE, 5000) .setMaxInitProgressTime(5000) .setStableStateTimePeriod(1000000) @@ -772,7 +772,7 @@ public class StateChangeTest extends FleetControllerTest { void testContinuousCrashRightAfterInit() throws Exception { startingTest("StateChangeTest::testContinuousCrashRightAfterInit"); // If node does this too many times, take it out of service - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)) + FleetControllerOptions.Builder builder = defaultOptions() .setMaxTransitionTime(NodeType.STORAGE, 5000) .setMaxInitProgressTime(5000) .setMaxPrematureCrashes(2) @@ -826,7 +826,7 @@ public class StateChangeTest extends FleetControllerTest { void testClusterStateMinNodes() throws Exception { startingTest("StateChangeTest::testClusterStateMinNodes"); // If node does this too many times, take it out of service - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)) + FleetControllerOptions.Builder builder = defaultOptions() .setMaxTransitionTime(NodeType.STORAGE, 0) .setMaxInitProgressTime(0) .setMinDistributorNodesUp(6) @@ -881,7 +881,7 @@ public class StateChangeTest extends FleetControllerTest { void testClusterStateMinFactor() throws Exception { startingTest("StateChangeTest::testClusterStateMinFactor"); // If node does this too many times, take it out of service - FleetControllerOptions.Builder options = defaultOptions("mycluster", createNodes(10)); + FleetControllerOptions.Builder options = defaultOptions(); options.setMaxTransitionTime(NodeType.STORAGE, 0); options.setMaxInitProgressTime(0); options.setMinDistributorNodesUp(0); @@ -954,8 +954,8 @@ public class StateChangeTest extends FleetControllerTest { @Test void testNoSystemStateBeforeInitialTimePeriod() throws Exception { startingTest("StateChangeTest::testNoSystemStateBeforeInitialTimePeriod()"); - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)); - builder.setMinTimeBeforeFirstSystemStateBroadcast(3 * 60 * 1000); + FleetControllerOptions.Builder builder = defaultOptions() + .setMinTimeBeforeFirstSystemStateBroadcast(3 * 60 * 1000); setUpSystem(builder); boolean useFakeTimer = true; setUpVdsNodes(useFakeTimer, true); @@ -1000,8 +1000,8 @@ public class StateChangeTest extends FleetControllerTest { @Test void testSystemStateSentWhenNodesReplied() throws Exception { startingTest("StateChangeTest::testSystemStateSentWhenNodesReplied()"); - FleetControllerOptions.Builder builder = defaultOptions("mycluster", createNodes(10)); - builder.setMinTimeBeforeFirstSystemStateBroadcast(300 * 60 * 1000); + FleetControllerOptions.Builder builder = defaultOptions() + .setMinTimeBeforeFirstSystemStateBroadcast(300 * 60 * 1000); boolean useFakeTimer = true; setUpSystem(builder); @@ -1038,7 +1038,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testDontTagFailingSetSystemStateOk() throws Exception { startingTest("StateChangeTest::testDontTagFailingSetSystemStateOk()"); - FleetControllerOptions.Builder options = defaultOptions("mycluster", createNodes(10)); + FleetControllerOptions.Builder options = defaultOptions(); setUpFleetController(true, options); setUpVdsNodes(true); waitForStableSystem(); @@ -1069,7 +1069,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testAlteringDistributionSplitCount() throws Exception { startingTest("StateChangeTest::testAlteringDistributionSplitCount"); - FleetControllerOptions.Builder options = defaultOptions("mycluster", createNodes(10)); + FleetControllerOptions.Builder options = defaultOptions(); options.setDistributionBits(17); initialize(options.build()); @@ -1116,7 +1116,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void testSetAllTimestampsAfterDowntime() throws Exception { startingTest("StateChangeTest::testSetAllTimestampsAfterDowntime"); - FleetControllerOptions.Builder options = defaultOptions("mycluster", createNodes(10)); + FleetControllerOptions.Builder options = defaultOptions(); setUpFleetController(true, options); setUpVdsNodes(true); waitForStableSystem(); @@ -1165,7 +1165,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void consolidated_cluster_state_reflects_node_changes_when_cluster_is_down() throws Exception { - FleetControllerOptions.Builder options = defaultOptions("mycluster", createNodes(10)); + FleetControllerOptions.Builder options = defaultOptions(); options.setMaxTransitionTime(NodeType.STORAGE, 0); options.setMinStorageNodesUp(10); options.setMinDistributorNodesUp(10); @@ -1199,7 +1199,7 @@ public class StateChangeTest extends FleetControllerTest { // of previous timer invocations (with subsequent state generation) would not be visible. @Test void timer_events_during_cluster_down_observe_most_recent_node_changes() throws Exception { - FleetControllerOptions.Builder options = defaultOptions("mycluster", createNodes(10)); + FleetControllerOptions.Builder options = defaultOptions(); options.setMaxTransitionTime(NodeType.STORAGE, 1000); options.setMinStorageNodesUp(10); options.setMinDistributorNodesUp(10); @@ -1234,7 +1234,7 @@ public class StateChangeTest extends FleetControllerTest { @Test void do_not_emit_multiple_events_when_node_state_does_not_match_versioned_state() throws Exception { - FleetControllerOptions.Builder options = defaultOptions("mycluster", createNodes(10)); + FleetControllerOptions.Builder options = defaultOptions(); initialize(options.build()); ctrl.tick(); @@ -1409,7 +1409,7 @@ public class StateChangeTest extends FleetControllerTest { } private static FleetControllerOptions.Builder optionsWithZeroTransitionTime() { - FleetControllerOptions.Builder options = defaultOptions("mycluster", createNodes(10)); + FleetControllerOptions.Builder options = defaultOptions(); options.setMaxTransitionTime(NodeType.STORAGE, 0); return options; } -- cgit v1.2.3 From 5c528eac65693e4cec73339d4e42d9ddcef680e8 Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Thu, 15 Sep 2022 11:40:43 +0200 Subject: Cleanup by using supervisor in superclass --- .../core/ClusterFeedBlockTest.java | 20 +------------------- .../core/FleetControllerTest.java | 8 ++------ .../clustercontroller/core/MasterElectionTest.java | 9 --------- .../clustercontroller/core/RpcServerTest.java | 9 --------- .../clustercontroller/core/StateChangeTest.java | 22 +++------------------- 5 files changed, 6 insertions(+), 62 deletions(-) (limited to 'clustercontroller-core') diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterFeedBlockTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterFeedBlockTest.java index 409e8932867..0485bd80aa0 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterFeedBlockTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterFeedBlockTest.java @@ -1,8 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.clustercontroller.core; -import com.yahoo.jrt.Supervisor; -import com.yahoo.jrt.Transport; import com.yahoo.vdslib.state.Node; import com.yahoo.vdslib.state.NodeState; import com.yahoo.vdslib.state.NodeType; @@ -11,21 +9,19 @@ import com.yahoo.vespa.clustercontroller.core.database.DatabaseHandler; import com.yahoo.vespa.clustercontroller.core.database.ZooKeeperDatabaseFactory; import com.yahoo.vespa.clustercontroller.core.status.StatusHandler; import com.yahoo.vespa.clustercontroller.utils.util.NoMetricReporter; -import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; - import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; +import static com.yahoo.vespa.clustercontroller.core.FeedBlockUtil.createResourceUsageJson; import static com.yahoo.vespa.clustercontroller.core.FeedBlockUtil.mapOf; import static com.yahoo.vespa.clustercontroller.core.FeedBlockUtil.setOf; import static com.yahoo.vespa.clustercontroller.core.FeedBlockUtil.usage; import static org.junit.jupiter.api.Assertions.assertEquals; -import static com.yahoo.vespa.clustercontroller.core.FeedBlockUtil.createResourceUsageJson; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -35,15 +31,9 @@ public class ClusterFeedBlockTest extends FleetControllerTest { private static final int NODE_COUNT = 3; // TODO dedupe fixture and setup stuff with other tests - private Supervisor supervisor; private FleetController ctrl; private DummyCommunicator communicator; - @BeforeEach - public void setUp() { - supervisor = new Supervisor(new Transport()); - } - private void initialize(FleetControllerOptions options) throws Exception { List nodes = new ArrayList<>(); for (int i = 0; i < options.nodes().size(); ++i) { @@ -78,14 +68,6 @@ public class ClusterFeedBlockTest extends FleetControllerTest { ctrl.tick(); } - public void tearDown() throws Exception { - if (supervisor != null) { - supervisor.transport().shutdown().join(); - supervisor = null; - } - super.tearDown(); - } - private static FleetControllerOptions createOptions(Map feedBlockLimits, double clusterFeedBlockNoiseLevel) { return defaultOptions("mycluster") .setStorageDistribution(DistributionBuilder.forFlatCluster(NODE_COUNT)) diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java index 4fff3023411..de01a290ec6 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java @@ -251,7 +251,8 @@ public abstract class FleetControllerTest implements Waiter { subsetWaiter.waitForState(expectedState); } - protected void tearDownSystem() { + @AfterEach + public void tearDown() { if (testName != null) { //log.log(Level.INFO, "STOPPING TEST " + testName); System.err.println("STOPPING TEST " + testName); @@ -278,11 +279,6 @@ public abstract class FleetControllerTest implements Waiter { } } - @AfterEach - public void tearDown() throws Exception { - tearDownSystem(); - } - public ClusterState waitForStableSystem() throws Exception { return waiter.waitForStableSystem(); } public ClusterState waitForStableSystem(int nodeCount) throws Exception { return waiter.waitForStableSystem(nodeCount); } public ClusterState waitForState(String state) throws Exception { return waiter.waitForState(state); } diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/MasterElectionTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/MasterElectionTest.java index 0631485bba8..4b566bd2aab 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/MasterElectionTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/MasterElectionTest.java @@ -35,8 +35,6 @@ public class MasterElectionTest extends FleetControllerTest { private static final Logger log = Logger.getLogger(MasterElectionTest.class.getName()); private static int defaultZkSessionTimeoutInMillis() { return 30_000; } - private Supervisor supervisor; - protected void setUpFleetControllers(int count, boolean useFakeTimer, FleetControllerOptions.Builder builder) throws Exception { if (zooKeeperServer == null) { zooKeeperServer = new ZooKeeperTestServer(); @@ -86,13 +84,6 @@ public class MasterElectionTest extends FleetControllerTest { } } - public void tearDown() throws Exception { - if (supervisor != null) { - supervisor.transport().shutdown().join(); - } - super.tearDown(); - } - @Test void testMasterElection() throws Exception { startingTest("MasterElectionTest::testMasterElection"); diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/RpcServerTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/RpcServerTest.java index f9eda9040d2..e61bdd566c3 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/RpcServerTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/RpcServerTest.java @@ -44,15 +44,6 @@ public class RpcServerTest extends FleetControllerTest { public static Logger log = Logger.getLogger(RpcServerTest.class.getName()); - private Supervisor supervisor; - - public void tearDown() throws Exception { - if (supervisor != null) { - supervisor.transport().shutdown().join(); - } - super.tearDown(); - } - @Test void testRebinding() throws Exception { startingTest("RpcServerTest::testRebinding"); diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/StateChangeTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/StateChangeTest.java index 18691fc8747..5868ad723a4 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/StateChangeTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/StateChangeTest.java @@ -1,8 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.clustercontroller.core; -import com.yahoo.jrt.Supervisor; -import com.yahoo.jrt.Transport; import com.yahoo.vdslib.distribution.ConfiguredNode; import com.yahoo.vdslib.state.ClusterState; import com.yahoo.vdslib.state.Node; @@ -14,10 +12,8 @@ import com.yahoo.vespa.clustercontroller.core.database.ZooKeeperDatabaseFactory; import com.yahoo.vespa.clustercontroller.core.status.StatusHandler; import com.yahoo.vespa.clustercontroller.core.testutils.StateWaiter; import com.yahoo.vespa.clustercontroller.utils.util.NoMetricReporter; -import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; - import java.time.Duration; import java.util.ArrayList; import java.util.HashMap; @@ -27,22 +23,18 @@ import java.util.logging.Logger; import static org.hamcrest.CoreMatchers.equalTo; import static org.hamcrest.MatcherAssert.assertThat; -import static org.junit.jupiter.api.Assertions.*; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; @ExtendWith(CleanupZookeeperLogsOnSuccess.class) public class StateChangeTest extends FleetControllerTest { public static Logger log = Logger.getLogger(StateChangeTest.class.getName()); - private Supervisor supervisor; private FleetController ctrl; private DummyCommunicator communicator; private EventLog eventLog; - @BeforeEach - public void setUp() { - supervisor = new Supervisor(new Transport()); - } - private void initialize(FleetControllerOptions options) throws Exception { List nodes = new ArrayList<>(); for (int i = 0; i < options.nodes().size(); ++i) { @@ -79,14 +71,6 @@ public class StateChangeTest extends FleetControllerTest { ctrl.tick(); } - public void tearDown() throws Exception { - if (supervisor != null) { - supervisor.transport().shutdown().join(); - supervisor = null; - } - super.tearDown(); - } - private void verifyNodeEvents(Node n, String correct) { String actual = ""; for (NodeEvent e : eventLog.getNodeEvents(n)) { -- cgit v1.2.3 From 26a597ce60f9e838b2d17a4635576b5a0c2123d0 Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Thu, 15 Sep 2022 11:48:33 +0200 Subject: Throw instead of logging Throw instead of logging when trying to start a fleetcontroller that has already been started --- .../vespa/clustercontroller/core/FleetControllerTest.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'clustercontroller-core') diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java index de01a290ec6..49d04e20621 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java @@ -167,25 +167,26 @@ public abstract class FleetControllerTest implements Waiter { } void startFleetController(boolean useFakeTimer) throws Exception { - if (fleetControllers.isEmpty()) { - fleetControllers.add(createFleetController(useFakeTimer, options)); - } else { - log.log(Level.WARNING, "already started fleetcontroller, not starting another"); - } + if ( ! fleetControllers.isEmpty()) throw new IllegalStateException("already started fleetcontroller, not starting another"); + + fleetControllers.add(createFleetController(useFakeTimer, options)); } protected void setUpVdsNodes(boolean useFakeTimer) throws Exception { setUpVdsNodes(useFakeTimer, false); } + protected void setUpVdsNodes(boolean useFakeTimer, boolean startDisconnected) throws Exception { setUpVdsNodes(useFakeTimer, startDisconnected, DEFAULT_NODE_COUNT); } + protected void setUpVdsNodes(boolean useFakeTimer, boolean startDisconnected, int nodeCount) throws Exception { TreeSet nodeIndexes = new TreeSet<>(); for (int i = 0; i < nodeCount; ++i) nodeIndexes.add(this.nodes.size()/2 + i); // divide by 2 because there are 2 nodes (storage and distributor) per index setUpVdsNodes(useFakeTimer, startDisconnected, nodeIndexes); } + protected void setUpVdsNodes(boolean useFakeTimer, boolean startDisconnected, Set nodeIndexes) throws Exception { for (int nodeIndex : nodeIndexes) { nodes.add(createNode(useFakeTimer, startDisconnected, DISTRIBUTOR, nodeIndex)); -- cgit v1.2.3