diff options
author | Harald Musum <musum@yahooinc.com> | 2022-08-17 23:26:38 +0200 |
---|---|---|
committer | Harald Musum <musum@yahooinc.com> | 2022-08-17 23:26:38 +0200 |
commit | 91ac5ebef7aa1a14017472842e9d14c5c7420ae3 (patch) | |
tree | 98249c869533cfb04f64875a50e26ca8a3918e2d /clustercontroller-core | |
parent | 68995ca7956eb6f6715afec3b07594188e52f8af (diff) |
Simplify by always using 3 fleet controllers
Diffstat (limited to 'clustercontroller-core')
-rw-r--r-- | clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/MasterElectionTest.java | 52 |
1 files changed, 15 insertions, 37 deletions
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 702a18b7bbc..e4535076e07 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 @@ -39,7 +39,7 @@ public class MasterElectionTest extends FleetControllerTest { private static int defaultZkSessionTimeoutInMillis() { return 30_000; } - protected void setUpFleetController(int count, boolean useFakeTimer, FleetControllerOptions options) throws Exception { + protected void setUpFleetControllers(boolean useFakeTimer, FleetControllerOptions options) throws Exception { if (zooKeeperServer == null) { zooKeeperServer = new ZooKeeperTestServer(); } @@ -48,21 +48,20 @@ public class MasterElectionTest extends FleetControllerTest { this.options.zooKeeperSessionTimeout = defaultZkSessionTimeoutInMillis(); this.options.zooKeeperServerAddress = zooKeeperServer.getAddress(); this.options.slobrokConnectionSpecs = getSlobrokConnectionSpecs(slobrok); - this.options.fleetControllerCount = count; - for (int i=0; i<count; ++i) { + this.options.fleetControllerCount = 3; + for (int i = 0; i< this.options.fleetControllerCount; ++i) { FleetControllerOptions nodeOptions = options.clone(); nodeOptions.fleetControllerIndex = i; fleetControllers.add(createFleetController(useFakeTimer, nodeOptions)); } } - private FleetControllerOptions adjustConfig(FleetControllerOptions o, int fleetControllerIndex, int fleetControllerCount) { + private FleetControllerOptions adjustConfig(FleetControllerOptions o, int fleetControllerIndex) { FleetControllerOptions options = o.clone(); options.zooKeeperSessionTimeout = defaultZkSessionTimeoutInMillis(); options.zooKeeperServerAddress = zooKeeperServer.getAddress(); options.slobrokConnectionSpecs = getSlobrokConnectionSpecs(slobrok); options.fleetControllerIndex = fleetControllerIndex; - options.fleetControllerCount = fleetControllerCount; return options; } @@ -114,16 +113,13 @@ public class MasterElectionTest extends FleetControllerTest { FleetControllerOptions options = defaultOptions("mycluster"); options.masterZooKeeperCooldownPeriod = 100; boolean usingFakeTimer = false; - setUpFleetController(5, usingFakeTimer, options); + setUpFleetControllers(usingFakeTimer, options); waitForMaster(0); log.log(Level.INFO, "SHUTTING DOWN FLEET CONTROLLER 0"); fleetControllers.get(0).shutdown(); waitForMaster(1); log.log(Level.INFO, "SHUTTING DOWN FLEET CONTROLLER 1"); fleetControllers.get(1).shutdown(); - waitForMaster(2); - log.log(Level.INFO, "SHUTTING DOWN FLEET CONTROLLER 2"); - fleetControllers.get(2).shutdown(); // Too few for there to be a master at this point for (int i = 0; i < fleetControllers.size(); ++i) { @@ -131,30 +127,12 @@ public class MasterElectionTest extends FleetControllerTest { assertFalse(fleetControllers.get(i).isMaster(), "Fleet controller " + i); } - log.log(Level.INFO, "STARTING FLEET CONTROLLER 2"); - fleetControllers.set(2, createFleetController(usingFakeTimer, fleetControllers.get(2).getOptions())); - waitForMaster(2); log.log(Level.INFO, "STARTING FLEET CONTROLLER 0"); fleetControllers.set(0, createFleetController(usingFakeTimer, fleetControllers.get(0).getOptions())); waitForMaster(0); log.log(Level.INFO, "STARTING FLEET CONTROLLER 1"); fleetControllers.set(1, createFleetController(usingFakeTimer, fleetControllers.get(1).getOptions())); waitForMaster(0); - - log.log(Level.INFO, "SHUTTING DOWN FLEET CONTROLLER 4"); - fleetControllers.get(4).shutdown(); - waitForMaster(0); - log.log(Level.INFO, "SHUTTING DOWN FLEET CONTROLLER 3"); - fleetControllers.get(3).shutdown(); - waitForMaster(0); - log.log(Level.INFO, "SHUTTING DOWN FLEET CONTROLLER 2"); - fleetControllers.get(2).shutdown(); - - // Too few for there to be a master at this point - for (int i = 0; i < fleetControllers.size(); ++i) { - if (fleetControllers.get(i).isRunning()) waitForCompleteCycle(i); - assertFalse(fleetControllers.get(i).isMaster()); - } } private void waitForMaster(int master) { @@ -218,7 +196,7 @@ public class MasterElectionTest extends FleetControllerTest { startingTest("MasterElectionTest::testClusterStateVersionIncreasesAcrossMasterElections"); FleetControllerOptions options = defaultOptions("mycluster"); options.masterZooKeeperCooldownPeriod = 1; - setUpFleetController(3, false, options); + setUpFleetControllers(false, options); // Currently need to have content nodes present for the cluster controller to even bother // attempting to persisting its cluster state version to ZK. setUpVdsNodes(false, new DummyVdsNodeOptions()); @@ -241,7 +219,7 @@ public class MasterElectionTest extends FleetControllerTest { // "Magic" port value is in range allocated to module for testing. zooKeeperServer = ZooKeeperTestServer.createWithFixedPort(18342); options.masterZooKeeperCooldownPeriod = 100; - setUpFleetController(2, false, options); + setUpFleetControllers(false, options); waitForMaster(0); zooKeeperServer.shutdown(true); @@ -261,7 +239,7 @@ public class MasterElectionTest extends FleetControllerTest { FleetControllerOptions options = defaultOptions("mycluster"); options.masterZooKeeperCooldownPeriod = 100; options.zooKeeperServerAddress = "localhost"; - setUpFleetController(3, false, options); + setUpFleetControllers(false, options); waitForMaster(0); log.log(Level.INFO, "STOPPING ZOOKEEPER SERVER AT " + zooKeeperServer.getAddress()); @@ -292,7 +270,7 @@ public class MasterElectionTest extends FleetControllerTest { startingTest("MasterElectionTest::testMasterZooKeeperCooldown"); FleetControllerOptions options = defaultOptions("mycluster"); options.masterZooKeeperCooldownPeriod = 3600 * 1000; // An hour - setUpFleetController(3, true, options); + setUpFleetControllers(true, options); waitForMaster(0); timer.advanceTime(24 * 3600 * 1000); // A day waitForCompleteCycle(1); @@ -340,7 +318,7 @@ public class MasterElectionTest extends FleetControllerTest { startingTest("MasterElectionTest::testGetMaster"); FleetControllerOptions options = defaultOptions("mycluster"); options.masterZooKeeperCooldownPeriod = 3600 * 1000; // An hour - setUpFleetController(3, true, options); + setUpFleetControllers(true, options); waitForMaster(0); supervisor = new Supervisor(new Transport()); @@ -422,12 +400,12 @@ public class MasterElectionTest extends FleetControllerTest { startingTest("MasterElectionTest::testReconfigure"); FleetControllerOptions options = defaultOptions("mycluster"); options.masterZooKeeperCooldownPeriod = 1; - setUpFleetController(3, false, options); + setUpFleetControllers(false, options); waitForMaster(0); FleetControllerOptions newOptions = options.clone(); for (int i = 0; i < fleetControllers.size(); ++i) { - FleetControllerOptions nodeOptions = adjustConfig(newOptions, i, fleetControllers.size()); + FleetControllerOptions nodeOptions = adjustConfig(newOptions, i); fleetControllers.get(i).updateOptions(nodeOptions); } waitForMaster(0); @@ -451,7 +429,7 @@ public class MasterElectionTest extends FleetControllerTest { options.minRatioOfStorageNodesUp = 0; options.minDistributorNodesUp = 0; options.minStorageNodesUp = 1; - setUpFleetController(3, false, options); + setUpFleetControllers(false, options); setUpVdsNodes(false, new DummyVdsNodeOptions()); fleetController = fleetControllers.get(0); // Required to prevent waitForStableSystem from NPE'ing waitForStableSystem(); @@ -496,7 +474,7 @@ public class MasterElectionTest extends FleetControllerTest { options.masterZooKeeperCooldownPeriod = 1; options.minTimeBeforeFirstSystemStateBroadcast = 100000; boolean useFakeTimer = false; - setUpFleetController(3, useFakeTimer, options); + setUpFleetControllers(useFakeTimer, options); setUpVdsNodes(false, new DummyVdsNodeOptions()); fleetController = fleetControllers.get(0); // Required to prevent waitForStableSystem from NPE'ing waitForMaster(0); @@ -539,7 +517,7 @@ public class MasterElectionTest extends FleetControllerTest { options.clusterHasGlobalDocumentTypes = false; options.masterZooKeeperCooldownPeriod = 1; options.minTimeBeforeFirstSystemStateBroadcast = 100000; - setUpFleetController(3, false, options); + setUpFleetControllers(false, options); setUpVdsNodes(false, new DummyVdsNodeOptions()); fleetController = fleetControllers.get(0); // Required to prevent waitForStableSystem from NPE'ing waitForMaster(0); |