http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalance.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalance.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalance.java index 6f6c0b8..92da126 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalance.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalance.java @@ -28,16 +28,14 @@ import java.util.Map; import java.util.Set; import org.apache.helix.controller.rebalancer.strategy.CrushRebalanceStrategy; import org.apache.helix.controller.rebalancer.util.RebalanceScheduler; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.model.BuiltInStateModelDefinitions; import org.apache.helix.model.ExternalView; import org.apache.helix.model.IdealState; -import org.apache.helix.tools.ClusterSetup; import org.apache.helix.tools.ClusterVerifiers.BestPossibleExternalViewVerifier; import org.apache.helix.tools.ClusterVerifiers.HelixClusterVerifier; -import org.omg.PortableServer.THREAD_POLICY_ID; import org.testng.Assert; import org.testng.annotations.AfterClass; import org.testng.annotations.AfterMethod; @@ -45,7 +43,7 @@ import org.testng.annotations.BeforeClass; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; -public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { +public class TestDelayedAutoRebalance extends ZkTestBase { final int NUM_NODE = 5; protected static final int START_PORT = 12918; protected static final int _PARTITIONS = 5; @@ -54,7 +52,6 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { protected final String CLUSTER_NAME = CLUSTER_PREFIX + "_" + CLASS_NAME; protected ClusterControllerManager _controller; - protected ClusterSetup _setupTool = null; List<MockParticipantManager> _participants = new ArrayList<MockParticipantManager>(); int _replica = 3; int _minActiveReplica = _replica - 1; @@ -65,16 +62,11 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { public void beforeClass() throws Exception { System.out.println("START " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - _setupTool = new ClusterSetup(_gZkClient); - _setupTool.addCluster(CLUSTER_NAME, true); + _gSetupTool.addCluster(CLUSTER_NAME, true); for (int i = 0; i < NUM_NODE; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); - _setupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); // start dummy participants MockParticipantManager participant = @@ -136,8 +128,8 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { Thread.sleep(500); for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _minActiveReplica, NUM_NODE); } setDelayTimeInCluster(_gZkClient, CLUSTER_NAME, -1); @@ -159,8 +151,8 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { // after delay time, it should maintain required number of replicas. for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _replica, NUM_NODE); } } @@ -172,10 +164,10 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { // disable delay rebalance for one db, partition should be moved immediately String testDb = _testDBs.get(0); - IdealState idealState = _setupTool.getClusterManagementTool().getResourceIdealState( + IdealState idealState = _gSetupTool.getClusterManagementTool().getResourceIdealState( CLUSTER_NAME, testDb); idealState.setDelayRebalanceEnabled(false); - _setupTool.getClusterManagementTool().setResourceIdealState(CLUSTER_NAME, testDb, idealState); + _gSetupTool.getClusterManagementTool().setResourceIdealState(CLUSTER_NAME, testDb, idealState); Thread.sleep(1000); @@ -183,9 +175,9 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { // replica for other dbs should not be moved. for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); IdealState is = - _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); if (db.equals(testDb)) { validateMinActiveAndTopStateReplica(idealState, ev, _replica, NUM_NODE); @@ -212,8 +204,8 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { Assert.assertTrue(_clusterVerifier.verify()); for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _replica, NUM_NODE); } @@ -230,7 +222,7 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { Thread.sleep(1000); for (String db : _testDBs) { - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); Map<String, List<String>> preferenceLists = is.getPreferenceLists(); for (List<String> instances : preferenceLists.values()) { Assert.assertFalse(instances.contains(disabledInstanceName)); @@ -243,7 +235,7 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { public void afterTest() throws InterruptedException { // delete all DBs create in last test for (String db : _testDBs) { - _setupTool.dropResourceFromCluster(CLUSTER_NAME, db); + _gSetupTool.dropResourceFromCluster(CLUSTER_NAME, db); } _testDBs.clear(); Thread.sleep(50); @@ -275,7 +267,7 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { Assert.assertTrue(_clusterVerifier.verify()); for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); externalViews.put(db, ev); } return externalViews; @@ -320,8 +312,8 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _minActiveReplica, NUM_NODE); validateNoPartitionMove(is, externalViewsBefore.get(db), ev, _participants.get(0).getInstanceName(), false); @@ -337,7 +329,7 @@ public class TestDelayedAutoRebalance extends ZkIntegrationTestBase { for (MockParticipantManager participant : _participants) { participant.syncStop(); } - _setupTool.deleteCluster(CLUSTER_NAME); + _gSetupTool.deleteCluster(CLUSTER_NAME); System.out.println("END " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); } }
http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalanceWithDisabledInstance.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalanceWithDisabledInstance.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalanceWithDisabledInstance.java index e36204b..0c2b24c 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalanceWithDisabledInstance.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalanceWithDisabledInstance.java @@ -61,8 +61,8 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _minActiveReplica, NUM_NODE); validateNoPartitionMove(is, externalViewsBefore.get(db), ev, instance, true); } @@ -84,8 +84,8 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _minActiveReplica, NUM_NODE); validateNoPartitionMove(is, externalViewsBefore.get(db), ev, _participants.get(0).getInstanceName(), true); @@ -111,8 +111,8 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _minActiveReplica, NUM_NODE); validateNoPartitionMove(is, externalViewsBefore.get(db), ev, _participants.get(0).getInstanceName(), true); @@ -125,8 +125,8 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _minActiveReplica, NUM_NODE); } setDelayTimeInCluster(_gZkClient, CLUSTER_NAME, -1); @@ -148,8 +148,8 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _minActiveReplica, NUM_NODE); validateNoPartitionMove(is, externalViewsBefore.get(db), ev, _participants.get(0).getInstanceName(), true); @@ -162,8 +162,8 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _minActiveReplica, NUM_NODE); } setDelayTimeInCluster(_gZkClient, CLUSTER_NAME, -1); @@ -186,8 +186,8 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut Assert.assertTrue(_clusterVerifier.verify()); for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _minActiveReplica, NUM_NODE); validateNoPartitionMove(is, externalViewsBefore.get(db), ev, _participants.get(0).getInstanceName(), true); @@ -197,8 +197,8 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut // after delay time, it should maintain required number of replicas. for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _replica, NUM_NODE); } } @@ -215,8 +215,8 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _minActiveReplica, NUM_NODE); validateNoPartitionMove(is, externalViewsBefore.get(db), ev, _participants.get(0).getInstanceName(), true); @@ -224,10 +224,10 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut // disable delay rebalance for one db, partition should be moved immediately String testDb = _testDBs.get(0); - IdealState idealState = _setupTool.getClusterManagementTool().getResourceIdealState( + IdealState idealState = _gSetupTool.getClusterManagementTool().getResourceIdealState( CLUSTER_NAME, testDb); idealState.setDelayRebalanceEnabled(false); - _setupTool.getClusterManagementTool().setResourceIdealState(CLUSTER_NAME, testDb, idealState); + _gSetupTool.getClusterManagementTool().setResourceIdealState(CLUSTER_NAME, testDb, idealState); Thread.sleep(2000); Assert.assertTrue(_clusterVerifier.verify()); @@ -235,9 +235,9 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut // replica for other dbs should not be moved. for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); IdealState is = - _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); if (db.equals(testDb)) { validateMinActiveAndTopStateReplica(idealState, ev, _replica, NUM_NODE); @@ -263,8 +263,8 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _minActiveReplica, NUM_NODE); validateNoPartitionMove(is, externalViewsBefore.get(db), ev, _participants.get(0).getInstanceName(), true); @@ -278,8 +278,8 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut Assert.assertTrue(_clusterVerifier.verify()); for (String db : _testDBs) { ExternalView ev = - _setupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState( + _gSetupTool.getClusterManagementTool().getResourceExternalView(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState( CLUSTER_NAME, db); validateMinActiveAndTopStateReplica(is, ev, _replica, NUM_NODE); } @@ -308,7 +308,7 @@ public class TestDelayedAutoRebalanceWithDisabledInstance extends TestDelayedAut private void enableInstance(String instance, boolean enabled) { // Disable one node, no partition should be moved. long currentTime = System.currentTimeMillis(); - _setupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, instance, enabled); + _gSetupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, instance, enabled); InstanceConfig instanceConfig = _configAccessor.getInstanceConfig(CLUSTER_NAME, instance); Assert.assertEquals(instanceConfig.getInstanceEnabled(), enabled); Assert.assertTrue(instanceConfig.getInstanceEnabledTime() >= currentTime); http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalanceWithRackaware.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalanceWithRackaware.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalanceWithRackaware.java index 116a756..2c096f5 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalanceWithRackaware.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/DelayedAutoRebalancer/TestDelayedAutoRebalanceWithRackaware.java @@ -41,18 +41,13 @@ public class TestDelayedAutoRebalanceWithRackaware extends TestDelayedAutoRebala public void beforeClass() throws Exception { System.out.println("START " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - _setupTool = new ClusterSetup(_gZkClient); - _setupTool.addCluster(CLUSTER_NAME, true); + _gSetupTool.addCluster(CLUSTER_NAME, true); for (int i = 0; i < NUM_NODE; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); - _setupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); String zone = "zone-" + i % 3; - _setupTool.getClusterManagementTool().setInstanceZoneId(CLUSTER_NAME, storageNodeName, zone); + _gSetupTool.getClusterManagementTool().setInstanceZoneId(CLUSTER_NAME, storageNodeName, zone); // start dummy participants MockParticipantManager participant = http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestExpandCluster.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestExpandCluster.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestExpandCluster.java index 0e6c69b..134ab14 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestExpandCluster.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestExpandCluster.java @@ -80,7 +80,7 @@ public class TestExpandCluster extends TestPartitionMigrationBase { config.getRecord().getSimpleFields() .remove(InstanceConfig.InstanceConfigProperty.HELIX_ENABLED_TIMESTAMP.name()); - _setupTool.getClusterManagementTool().addInstance(CLUSTER_NAME, config); + _gSetupTool.getClusterManagementTool().addInstance(CLUSTER_NAME, config); // start dummy participants MockParticipantManager participant = @@ -92,7 +92,7 @@ public class TestExpandCluster extends TestPartitionMigrationBase { // enable new instance one by one for (int i = numNodes; i < numNodes + NUM_NODE; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); - _setupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, storageNodeName, true); + _gSetupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, storageNodeName, true); Thread.sleep(100); } @@ -120,7 +120,7 @@ public class TestExpandCluster extends TestPartitionMigrationBase { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); MockParticipantManager participant = _participants.get(i); participant.syncStop(); - _setupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, storageNodeName, false); + _gSetupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, storageNodeName, false); Assert.assertTrue(_clusterVerifier.verify()); } http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestFullAutoMigration.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestFullAutoMigration.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestFullAutoMigration.java index e93445d..8dfe195 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestFullAutoMigration.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestFullAutoMigration.java @@ -139,10 +139,10 @@ public class TestFullAutoMigration extends TestPartitionMigrationBase { delayTime); _testDBs.add(db); } - Thread.sleep(800); + Thread.sleep(100); Assert.assertTrue(_clusterVerifier.verify()); for (String db : _testDBs) { - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); idealStateMap.put(db, is); } return idealStateMap; http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestPartitionMigrationBase.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestPartitionMigrationBase.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestPartitionMigrationBase.java index 2b7996c..4e9638a 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestPartitionMigrationBase.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestPartitionMigrationBase.java @@ -34,21 +34,20 @@ import org.apache.helix.api.listeners.ExternalViewChangeListener; import org.apache.helix.api.listeners.IdealStateChangeListener; import org.apache.helix.controller.rebalancer.strategy.CrushRebalanceStrategy; import org.apache.helix.integration.DelayedTransitionBase; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.model.BuiltInStateModelDefinitions; import org.apache.helix.model.ClusterConfig; import org.apache.helix.model.ExternalView; import org.apache.helix.model.IdealState; -import org.apache.helix.tools.ClusterSetup; import org.apache.helix.tools.ClusterVerifiers.BestPossibleExternalViewVerifier; import org.apache.helix.tools.ClusterVerifiers.HelixClusterVerifier; import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; -public class TestPartitionMigrationBase extends ZkIntegrationTestBase { +public class TestPartitionMigrationBase extends ZkTestBase { final int NUM_NODE = 6; protected static final int START_PORT = 12918; protected static final int _PARTITIONS = 50; @@ -57,7 +56,6 @@ public class TestPartitionMigrationBase extends ZkIntegrationTestBase { protected final String CLUSTER_NAME = CLUSTER_PREFIX + "_" + CLASS_NAME; protected ClusterControllerManager _controller; - protected ClusterSetup _setupTool = null; List<MockParticipantManager> _participants = new ArrayList<>(); int _replica = 3; int _minActiveReplica = _replica - 1; @@ -73,12 +71,7 @@ public class TestPartitionMigrationBase extends ZkIntegrationTestBase { public void beforeClass() throws Exception { System.out.println("START " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - _setupTool = new ClusterSetup(_gZkClient); - _setupTool.addCluster(CLUSTER_NAME, true); + _gSetupTool.addCluster(CLUSTER_NAME, true); for (int i = 0; i < NUM_NODE; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); @@ -103,12 +96,12 @@ public class TestPartitionMigrationBase extends ZkIntegrationTestBase { } protected MockParticipantManager createAndStartParticipant(String instancename) { - _setupTool.addInstanceToCluster(CLUSTER_NAME, instancename); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, instancename); // start dummy participants MockParticipantManager participant = - new MockParticipantManager(ZK_ADDR, CLUSTER_NAME, instancename, 50); - participant.setTransition(new DelayedTransitionBase(50)); + new MockParticipantManager(ZK_ADDR, CLUSTER_NAME, instancename, 10); + participant.setTransition(new DelayedTransitionBase(10)); participant.syncStart(); return participant; } @@ -129,7 +122,7 @@ public class TestPartitionMigrationBase extends ZkIntegrationTestBase { _testDBs.add(db); } for (String db : _testDBs) { - IdealState is = _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); + IdealState is = _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db); idealStateMap.put(db, is); } ClusterConfig clusterConfig = _configAccessor.getClusterConfig(CLUSTER_NAME); @@ -210,23 +203,23 @@ public class TestPartitionMigrationBase extends ZkIntegrationTestBase { private void verifyPartitionCount(String resource, String partition, Map<String, String> stateMap, int replica, String warningPrefix, int minActiveReplica) { if (stateMap.size() < replica) { - System.out.println( - "resource " + resource + ", partition " + partition + " has " + stateMap.size() - + " replicas in " + warningPrefix); +// System.out.println( +// "resource " + resource + ", partition " + partition + " has " + stateMap.size() +// + " replicas in " + warningPrefix); _hasLessReplica = true; } if (stateMap.size() > replica + EXTRA_REPLICA) { - System.out.println( - "resource " + resource + ", partition " + partition + " has " + stateMap.size() - + " replicas in " + warningPrefix); - _hasMoreReplica = true; +// System.out.println( +// "resource " + resource + ", partition " + partition + " has " + stateMap.size() +// + " replicas in " + warningPrefix); +// _hasMoreReplica = true; } if (stateMap.size() < minActiveReplica) { - System.out.println( - "resource " + resource + ", partition " + partition + " has " + stateMap.size() - + " min active replicas in " + warningPrefix); +// System.out.println( +// "resource " + resource + ", partition " + partition + " has " + stateMap.size() +// + " min active replicas in " + warningPrefix); _hasMinActiveReplica = true; } } @@ -260,7 +253,7 @@ public class TestPartitionMigrationBase extends ZkIntegrationTestBase { participant.syncStop(); } _manager.disconnect(); - _setupTool.deleteCluster(CLUSTER_NAME); + _gSetupTool.deleteCluster(CLUSTER_NAME); System.out.println("END " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); } } http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoIsWithEmptyMap.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoIsWithEmptyMap.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoIsWithEmptyMap.java index 6a77336..0181139 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoIsWithEmptyMap.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoIsWithEmptyMap.java @@ -25,7 +25,7 @@ import java.util.List; import org.apache.helix.PropertyPathBuilder; import org.apache.helix.TestHelper; import org.apache.helix.ZNRecord; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.model.IdealState; @@ -35,7 +35,7 @@ import org.apache.helix.tools.DefaultIdealStateCalculator; import org.testng.Assert; import org.testng.annotations.Test; -public class TestAutoIsWithEmptyMap extends ZkIntegrationTestBase { +public class TestAutoIsWithEmptyMap extends ZkTestBase { @Test public void testAutoIsWithEmptyMap() throws Exception { String className = TestHelper.getTestClassName(); @@ -96,6 +96,7 @@ public class TestAutoIsWithEmptyMap extends ZkIntegrationTestBase { for (int i = 0; i < 5; i++) { participants[i].syncStop(); } + _gSetupTool.deleteCluster(clusterName); System.out.println("END " + clusterName + " at " + new Date(System.currentTimeMillis())); http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalance.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalance.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalance.java index 0619359..7c06e9d 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalance.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalance.java @@ -55,33 +55,27 @@ public class TestAutoRebalance extends ZkStandAloneCMTestBase { // Logger.getRootLogger().setLevel(Level.INFO); System.out.println("START " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - _setupTool = new ClusterSetup(_gZkClient); - // setup storage cluster - _setupTool.addCluster(CLUSTER_NAME, true); - _setupTool.addResourceToCluster(CLUSTER_NAME, TEST_DB, _PARTITIONS, STATE_MODEL, + _gSetupTool.addCluster(CLUSTER_NAME, true); + _gSetupTool.addResourceToCluster(CLUSTER_NAME, TEST_DB, _PARTITIONS, STATE_MODEL, RebalanceMode.FULL_AUTO + ""); - _setupTool.addResourceToCluster(CLUSTER_NAME, db2, _PARTITIONS, "OnlineOffline", + _gSetupTool.addResourceToCluster(CLUSTER_NAME, db2, _PARTITIONS, "OnlineOffline", RebalanceMode.FULL_AUTO + ""); for (int i = 0; i < NODE_NR; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); - _setupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); } - _setupTool.rebalanceStorageCluster(CLUSTER_NAME, TEST_DB, _replica); + _gSetupTool.rebalanceStorageCluster(CLUSTER_NAME, TEST_DB, _replica); for (int i = 0; i < 3; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); - _setupTool.getClusterManagementTool().addInstanceTag(CLUSTER_NAME, storageNodeName, _tag); + _gSetupTool.getClusterManagementTool().addInstanceTag(CLUSTER_NAME, storageNodeName, _tag); } - _setupTool.rebalanceCluster(CLUSTER_NAME, db2, 1, "ucpx", _tag); + _gSetupTool.rebalanceCluster(CLUSTER_NAME, db2, 1, "ucpx", _tag); // start dummy participants for (int i = 0; i < NODE_NR; i++) { @@ -108,10 +102,10 @@ public class TestAutoRebalance extends ZkStandAloneCMTestBase { @Test() public void testDropResourceAutoRebalance() throws Exception { // add a resource to be dropped - _setupTool.addResourceToCluster(CLUSTER_NAME, "MyDB", _PARTITIONS, "OnlineOffline", + _gSetupTool.addResourceToCluster(CLUSTER_NAME, "MyDB", _PARTITIONS, "OnlineOffline", RebalanceMode.FULL_AUTO + ""); - _setupTool.rebalanceStorageCluster(CLUSTER_NAME, "MyDB", 1); + _gSetupTool.rebalanceStorageCluster(CLUSTER_NAME, "MyDB", 1); boolean result = ClusterStateVerifier.verifyByZkCallback(new ExternalViewBalancedVerifier(_gZkClient, @@ -126,10 +120,10 @@ public class TestAutoRebalance extends ZkStandAloneCMTestBase { "localhost_12921", "localhost_12922"), ZK_ADDR); // add a resource to be dropped - _setupTool.addResourceToCluster(CLUSTER_NAME, "MyDB2", _PARTITIONS, "MasterSlave", + _gSetupTool.addResourceToCluster(CLUSTER_NAME, "MyDB2", _PARTITIONS, "MasterSlave", RebalanceMode.FULL_AUTO + ""); - _setupTool.rebalanceStorageCluster(CLUSTER_NAME, "MyDB2", 1); + _gSetupTool.rebalanceStorageCluster(CLUSTER_NAME, "MyDB2", 1); result = ClusterStateVerifier.verifyByZkCallback(new ExternalViewBalancedVerifier(_gZkClient, @@ -157,7 +151,7 @@ public class TestAutoRebalance extends ZkStandAloneCMTestBase { // add 2 nodes for (int i = 0; i < 2; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (1000 + i); - _setupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); MockParticipantManager participant = new MockParticipantManager(ZK_ADDR, CLUSTER_NAME, storageNodeName.replace(':', '_')); http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalancePartitionLimit.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalancePartitionLimit.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalancePartitionLimit.java index a53b6c6..ba30964 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalancePartitionLimit.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalancePartitionLimit.java @@ -54,22 +54,16 @@ public class TestAutoRebalancePartitionLimit extends ZkStandAloneCMTestBase { // Logger.getRootLogger().setLevel(Level.INFO); System.out.println("START " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - _setupTool = new ClusterSetup(ZK_ADDR); - // setup storage cluster - _setupTool.addCluster(CLUSTER_NAME, true); + _gSetupTool.addCluster(CLUSTER_NAME, true); - _setupTool.addResourceToCluster(CLUSTER_NAME, TEST_DB, 100, "OnlineOffline", + _gSetupTool.addResourceToCluster(CLUSTER_NAME, TEST_DB, 100, "OnlineOffline", RebalanceMode.FULL_AUTO + "", 0, 25); for (int i = 0; i < NODE_NR; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); - _setupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); } - _setupTool.rebalanceStorageCluster(CLUSTER_NAME, TEST_DB, 1); + _gSetupTool.rebalanceStorageCluster(CLUSTER_NAME, TEST_DB, 1); // start controller String controllerName = CONTROLLER_PREFIX + "_0"; @@ -134,7 +128,7 @@ public class TestAutoRebalancePartitionLimit extends ZkStandAloneCMTestBase { // add 2 nodes for (int i = 0; i < 2; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (1000 + i); - _setupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); String newInstanceName = storageNodeName.replace(':', '_'); MockParticipantManager participant = http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalanceWithDisabledInstance.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalanceWithDisabledInstance.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalanceWithDisabledInstance.java index a0a53b9..13e156f 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalanceWithDisabledInstance.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestAutoRebalanceWithDisabledInstance.java @@ -41,9 +41,9 @@ public class TestAutoRebalanceWithDisabledInstance extends ZkStandAloneCMTestBas @Override public void beforeClass() throws Exception { super.beforeClass(); - _setupTool.addResourceToCluster(CLUSTER_NAME, TEST_DB_2, _PARTITIONS, STATE_MODEL, + _gSetupTool.addResourceToCluster(CLUSTER_NAME, TEST_DB_2, _PARTITIONS, STATE_MODEL, RebalanceMode.FULL_AUTO + ""); - _setupTool.rebalanceResource(CLUSTER_NAME, TEST_DB_2, _replica); + _gSetupTool.rebalanceResource(CLUSTER_NAME, TEST_DB_2, _replica); Thread.sleep(2000); @@ -70,7 +70,7 @@ public class TestAutoRebalanceWithDisabledInstance extends ZkStandAloneCMTestBas Assert.assertFalse(currentPartitions.isEmpty()); // disable instance - _setupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, disabledInstance, false); + _gSetupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, disabledInstance, false); Thread.sleep(4000); // TODO: preference list is not persisted in IS for full-auto, @@ -84,7 +84,7 @@ public class TestAutoRebalanceWithDisabledInstance extends ZkStandAloneCMTestBas Assert.assertTrue(currentPartitions.isEmpty()); //enable instance - _setupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, disabledInstance, true); + _gSetupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, disabledInstance, true); Thread.sleep(4000); // TODO: preference list is not persisted in IS for full-auto, @@ -102,10 +102,10 @@ public class TestAutoRebalanceWithDisabledInstance extends ZkStandAloneCMTestBas public void testAddDisabledInstanceAutoRebalance() throws Exception { // add disabled instance. String nodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + NODE_NR); - _setupTool.addInstanceToCluster(CLUSTER_NAME, nodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, nodeName); MockParticipantManager participant = new MockParticipantManager(ZK_ADDR, CLUSTER_NAME, nodeName); - _setupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, nodeName, false); + _gSetupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, nodeName, false); participant.syncStart(); @@ -121,7 +121,7 @@ public class TestAutoRebalanceWithDisabledInstance extends ZkStandAloneCMTestBas Assert.assertTrue(currentPartitions.isEmpty()); //enable instance - _setupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, nodeName, true); + _gSetupTool.getClusterManagementTool().enableInstance(CLUSTER_NAME, nodeName, true); Thread.sleep(2000); // TODO: preference list is not persisted in IS for full-auto, // Need a way to find how helix assigns partitions to nodes. @@ -135,7 +135,7 @@ public class TestAutoRebalanceWithDisabledInstance extends ZkStandAloneCMTestBas } private Set<String> getPartitionsAssignedtoInstance(String cluster, String dbName, String instance) { - HelixAdmin admin = _setupTool.getClusterManagementTool(); + HelixAdmin admin = _gSetupTool.getClusterManagementTool(); Set<String> partitionSet = new HashSet<String>(); IdealState is = admin.getResourceIdealState(cluster, dbName); for (String partition : is.getRecord().getListFields().keySet()) { @@ -151,7 +151,7 @@ public class TestAutoRebalanceWithDisabledInstance extends ZkStandAloneCMTestBas } private Set<String> getCurrentPartitionsOnInstance(String cluster, String dbName, String instance) { - HelixAdmin admin = _setupTool.getClusterManagementTool(); + HelixAdmin admin = _gSetupTool.getClusterManagementTool(); Set<String> partitionSet = new HashSet<String>(); ExternalView ev = admin.getResourceExternalView(cluster, dbName); http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestClusterInMaintenanceModeWhenReachingMaxPartition.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestClusterInMaintenanceModeWhenReachingMaxPartition.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestClusterInMaintenanceModeWhenReachingMaxPartition.java index 9769021..c7ef8fa 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestClusterInMaintenanceModeWhenReachingMaxPartition.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestClusterInMaintenanceModeWhenReachingMaxPartition.java @@ -24,14 +24,13 @@ import java.util.Date; import java.util.List; import org.apache.helix.ConfigAccessor; import org.apache.helix.HelixDataAccessor; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.manager.zk.ZKHelixDataAccessor; import org.apache.helix.model.BuiltInStateModelDefinitions; import org.apache.helix.model.ClusterConfig; import org.apache.helix.model.MaintenanceSignal; -import org.apache.helix.model.PauseSignal; import org.apache.helix.tools.ClusterVerifiers.BestPossibleExternalViewVerifier; import org.apache.helix.tools.ClusterVerifiers.HelixClusterVerifier; import org.testng.Assert; @@ -39,7 +38,7 @@ import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; -public class TestClusterInMaintenanceModeWhenReachingMaxPartition extends ZkIntegrationTestBase { +public class TestClusterInMaintenanceModeWhenReachingMaxPartition extends ZkTestBase { final int NUM_NODE = 5; protected static final int START_PORT = 12918; protected static final int _PARTITIONS = 5; @@ -58,10 +57,6 @@ public class TestClusterInMaintenanceModeWhenReachingMaxPartition extends ZkInte public void beforeClass() throws Exception { System.out.println("START " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } _gSetupTool.addCluster(CLUSTER_NAME, true); for (int i = 0; i < NUM_NODE; i++) { http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestClusterInMaintenanceModeWhenReachingOfflineInstancesLimit.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestClusterInMaintenanceModeWhenReachingOfflineInstancesLimit.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestClusterInMaintenanceModeWhenReachingOfflineInstancesLimit.java index eaac6bc..f63769b 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestClusterInMaintenanceModeWhenReachingOfflineInstancesLimit.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestClusterInMaintenanceModeWhenReachingOfflineInstancesLimit.java @@ -26,8 +26,7 @@ import java.util.List; import org.apache.helix.ConfigAccessor; import org.apache.helix.HelixAdmin; import org.apache.helix.HelixDataAccessor; -import org.apache.helix.PropertyKey; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.manager.zk.ZKHelixAdmin; @@ -48,10 +47,9 @@ import javax.management.MalformedObjectNameException; import javax.management.ObjectName; import static org.apache.helix.monitoring.mbeans.ClusterStatusMonitor.CLUSTER_DN_KEY; -import static org.apache.helix.util.StatusUpdateUtil.ErrorType.RebalanceResourceFailure; public class TestClusterInMaintenanceModeWhenReachingOfflineInstancesLimit - extends ZkIntegrationTestBase { + extends ZkTestBase { static final int NUM_NODE = 10; static final int START_PORT = 12918; static final int _PARTITIONS = 5; @@ -70,10 +68,6 @@ public class TestClusterInMaintenanceModeWhenReachingOfflineInstancesLimit public void beforeClass() throws Exception { System.out.println("START " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } _gSetupTool.addCluster(CLUSTER_NAME, true); for (int i = 0; i < NUM_NODE; i++) { http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestCustomIdealState.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestCustomIdealState.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestCustomIdealState.java index f806f16..b971e38 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestCustomIdealState.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestCustomIdealState.java @@ -22,13 +22,13 @@ package org.apache.helix.integration.rebalancer; import java.util.Date; import org.apache.helix.TestHelper; import org.apache.helix.integration.TestDriver; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.tools.ClusterSetup; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.testng.annotations.Test; -public class TestCustomIdealState extends ZkIntegrationTestBase { +public class TestCustomIdealState extends ZkTestBase { private static Logger LOG = LoggerFactory.getLogger(TestCustomIdealState.class); @Test http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestCustomizedIdealStateRebalancer.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestCustomizedIdealStateRebalancer.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestCustomizedIdealStateRebalancer.java index 9098e8e..ba6db12 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestCustomizedIdealStateRebalancer.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestCustomizedIdealStateRebalancer.java @@ -77,14 +77,14 @@ public class TestCustomizedIdealStateRebalancer extends ZkStandAloneCMTestBase { @Test public void testCustomizedIdealStateRebalancer() throws InterruptedException { - _setupTool.addResourceToCluster(CLUSTER_NAME, db2, 60, "MasterSlave"); - _setupTool.addResourceProperty(CLUSTER_NAME, db2, + _gSetupTool.addResourceToCluster(CLUSTER_NAME, db2, 60, "MasterSlave"); + _gSetupTool.addResourceProperty(CLUSTER_NAME, db2, IdealStateProperty.REBALANCER_CLASS_NAME.toString(), TestCustomizedIdealStateRebalancer.TestRebalancer.class.getName()); - _setupTool.addResourceProperty(CLUSTER_NAME, db2, IdealStateProperty.REBALANCE_MODE.toString(), + _gSetupTool.addResourceProperty(CLUSTER_NAME, db2, IdealStateProperty.REBALANCE_MODE.toString(), RebalanceMode.USER_DEFINED.toString()); - _setupTool.rebalanceStorageCluster(CLUSTER_NAME, db2, 3); + _gSetupTool.rebalanceStorageCluster(CLUSTER_NAME, db2, 3); boolean result = ClusterStateVerifier.verifyByZkCallback(new ExternalViewBalancedVerifier(_gZkClient, http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestFullAutoNodeTagging.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestFullAutoNodeTagging.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestFullAutoNodeTagging.java index e48b3fd..b966f86 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestFullAutoNodeTagging.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestFullAutoNodeTagging.java @@ -160,6 +160,13 @@ public class TestFullAutoNodeTagging extends ZkUnitTestBase { boolean finalResult = TestHelper.verify(v, 10 * 1000); Assert.assertTrue(finalResult); + // clean up + controller.syncStop(); + for (int i = 0; i < NUM_PARTICIPANTS; i++) { + participants[i].syncStop(); + } + TestHelper.dropCluster(clusterName, _gZkClient); + System.out.println("END " + clusterName + " at " + new Date(System.currentTimeMillis())); } @@ -220,6 +227,7 @@ public class TestFullAutoNodeTagging extends ZkUnitTestBase { participants[i].syncStop(); } controller.syncStop(); + TestHelper.dropCluster(clusterName, _gZkClient); } /** @@ -312,6 +320,7 @@ public class TestFullAutoNodeTagging extends ZkUnitTestBase { } } controller.syncStop(); + TestHelper.dropCluster(clusterName, _gZkClient); System.out.println("END " + clusterName + " at " + new Date(System.currentTimeMillis())); } http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestMixedModeAutoRebalance.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestMixedModeAutoRebalance.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestMixedModeAutoRebalance.java index 156bad5..28e112e 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestMixedModeAutoRebalance.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestMixedModeAutoRebalance.java @@ -31,7 +31,7 @@ import org.apache.helix.NotificationContext; import org.apache.helix.controller.rebalancer.strategy.CrushEdRebalanceStrategy; import org.apache.helix.controller.rebalancer.strategy.CrushRebalanceStrategy; import org.apache.helix.controller.rebalancer.util.RebalanceScheduler; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.manager.zk.ZKHelixDataAccessor; @@ -53,7 +53,7 @@ import org.testng.annotations.BeforeClass; import org.testng.annotations.DataProvider; import org.testng.annotations.Test; -public class TestMixedModeAutoRebalance extends ZkIntegrationTestBase { +public class TestMixedModeAutoRebalance extends ZkTestBase { private final int NUM_NODE = 5; private static final int START_PORT = 12918; private static final int _PARTITIONS = 5; @@ -72,10 +72,6 @@ public class TestMixedModeAutoRebalance extends ZkIntegrationTestBase { public void beforeClass() throws Exception { System.out.println("START " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } _gSetupTool.addCluster(CLUSTER_NAME, true); for (int i = 0; i < NUM_NODE; i++) { http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestSemiAutoRebalance.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestSemiAutoRebalance.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestSemiAutoRebalance.java index 3eb0e57..b979bbe 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestSemiAutoRebalance.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestSemiAutoRebalance.java @@ -26,7 +26,7 @@ import java.util.List; import java.util.Map; import org.apache.helix.HelixDataAccessor; import org.apache.helix.PropertyKey; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.manager.zk.ZKHelixDataAccessor; @@ -34,10 +34,11 @@ import org.apache.helix.model.ExternalView; import org.apache.helix.model.IdealState; import org.apache.helix.model.MasterSlaveSMD; import org.testng.Assert; +import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; -public class TestSemiAutoRebalance extends ZkIntegrationTestBase { +public class TestSemiAutoRebalance extends ZkTestBase { protected final String CLASS_NAME = getShortClassName(); protected final String CLUSTER_NAME = CLUSTER_PREFIX + "_" + CLASS_NAME; @@ -49,7 +50,7 @@ public class TestSemiAutoRebalance extends ZkIntegrationTestBase { protected static final int REPLICA_NUMBER = 3; protected static final String STATE_MODEL = "MasterSlave"; - protected List<MockParticipantManager> _participants = new ArrayList<MockParticipantManager>(); + protected List<MockParticipantManager> _participants = new ArrayList<>(); protected ClusterControllerManager _controller; protected HelixDataAccessor _accessor; @@ -61,11 +62,6 @@ public class TestSemiAutoRebalance extends ZkIntegrationTestBase { System.out.println( "START " + getShortClassName() + " at " + new Date(System.currentTimeMillis())); - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - // setup storage cluster _gSetupTool.addCluster(CLUSTER_NAME, true); _gSetupTool.addResourceToCluster(CLUSTER_NAME, DB_NAME, PARTITION_NUMBER, STATE_MODEL, @@ -125,6 +121,18 @@ public class TestSemiAutoRebalance extends ZkIntegrationTestBase { } } + @AfterClass + public void afterClass() throws Exception { + _controller.syncStop(); + for (MockParticipantManager p : _participants) { + if (p.isConnected()) { + p.syncStop(); + } + } + _gSetupTool.deleteCluster(CLUSTER_NAME); + System.out.println("END " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); + } + @Test public void testAddParticipant() throws InterruptedException { http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestZeroReplicaAvoidance.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestZeroReplicaAvoidance.java b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestZeroReplicaAvoidance.java index e1bfa82..267b88b 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestZeroReplicaAvoidance.java +++ b/helix-core/src/test/java/org/apache/helix/integration/rebalancer/TestZeroReplicaAvoidance.java @@ -29,7 +29,7 @@ import org.apache.helix.HelixManagerFactory; import org.apache.helix.IdealStateChangeListener; import org.apache.helix.InstanceType; import org.apache.helix.NotificationContext; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.mock.participant.MockTransition; @@ -38,21 +38,19 @@ import org.apache.helix.model.ExternalView; import org.apache.helix.model.IdealState; import org.apache.helix.model.Message; import org.apache.helix.model.StateModelDefinition; -import org.apache.helix.tools.ClusterSetup; import org.apache.helix.tools.ClusterVerifiers.BestPossibleExternalViewVerifier; import org.apache.helix.tools.ClusterVerifiers.HelixClusterVerifier; import org.testng.Assert; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; -public class TestZeroReplicaAvoidance extends ZkIntegrationTestBase implements +public class TestZeroReplicaAvoidance extends ZkTestBase implements ExternalViewChangeListener, IdealStateChangeListener{ final int NUM_NODE = 6; final int START_PORT = 12918; final String CLASS_NAME = getShortClassName(); final String CLUSTER_NAME = CLUSTER_PREFIX + "_" + CLASS_NAME; - ClusterSetup _setupTool = null; List<MockParticipantManager> _participants = new ArrayList<MockParticipantManager>(); HelixClusterVerifier _clusterVerifier; boolean _testSuccess = true; @@ -62,16 +60,11 @@ public class TestZeroReplicaAvoidance extends ZkIntegrationTestBase implements public void beforeClass() throws Exception { System.out.println("START " + CLASS_NAME + " at " + new Date(System.currentTimeMillis())); - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - _setupTool = new ClusterSetup(_gZkClient); - _setupTool.addCluster(CLUSTER_NAME, true); + _gSetupTool.addCluster(CLUSTER_NAME, true); for (int i = 0; i < NUM_NODE; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); - _setupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); MockParticipantManager participant = new MockParticipantManager(ZK_ADDR, CLUSTER_NAME, storageNodeName); participant.setTransition(new DelayedTransition()); @@ -185,7 +178,7 @@ public class TestZeroReplicaAvoidance extends ZkIntegrationTestBase implements return; } for (ExternalView view : externalViewList) { - IdealState is = _setupTool.getClusterManagementTool() + IdealState is = _gSetupTool.getClusterManagementTool() .getResourceIdealState(CLUSTER_NAME, view.getResourceName()); validateNoZeroReplica(is, view); } @@ -197,7 +190,7 @@ public class TestZeroReplicaAvoidance extends ZkIntegrationTestBase implements return; } for (IdealState is : idealStates) { - ExternalView view = _setupTool.getClusterManagementTool() + ExternalView view = _gSetupTool.getClusterManagementTool() .getResourceExternalView(CLUSTER_NAME, is.getResourceName()); validateNoZeroReplica(is, view); } http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProvider.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProvider.java b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProvider.java index e395519..0c1d0da 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProvider.java +++ b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProvider.java @@ -12,7 +12,7 @@ import org.apache.helix.HelixManager; import org.apache.helix.HelixManagerFactory; import org.apache.helix.InstanceType; import org.apache.helix.api.listeners.RoutingTableChangeListener; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.model.BuiltInStateModelDefinitions; @@ -28,7 +28,7 @@ import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; -public class TestRoutingTableProvider extends ZkIntegrationTestBase { +public class TestRoutingTableProvider extends ZkTestBase { static final String STATE_MODEL = BuiltInStateModelDefinitions.MasterSlave.name(); static final String TEST_DB = "TestDB"; http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderFromCurrentStates.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderFromCurrentStates.java b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderFromCurrentStates.java index 72a6dae..99e4ce6 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderFromCurrentStates.java +++ b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderFromCurrentStates.java @@ -9,14 +9,13 @@ import org.apache.helix.HelixManager; import org.apache.helix.HelixManagerFactory; import org.apache.helix.InstanceType; import org.apache.helix.PropertyType; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.model.ClusterConfig; import org.apache.helix.model.IdealState; import org.apache.helix.model.InstanceConfig; import org.apache.helix.spectator.RoutingTableProvider; -import org.apache.helix.tools.ClusterSetup; import org.apache.helix.tools.ClusterVerifiers.BestPossibleExternalViewVerifier; import org.apache.helix.tools.ClusterVerifiers.HelixClusterVerifier; import org.testng.Assert; @@ -24,9 +23,8 @@ import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; -public class TestRoutingTableProviderFromCurrentStates extends ZkIntegrationTestBase { +public class TestRoutingTableProviderFromCurrentStates extends ZkTestBase { private HelixManager _manager; - private ClusterSetup _setupTool; private final int NUM_NODES = 10; protected int NUM_PARTITIONS = 20; protected int NUM_REPLICAS = 3; @@ -37,19 +35,11 @@ public class TestRoutingTableProviderFromCurrentStates extends ZkIntegrationTest @BeforeClass public void beforeClass() throws Exception { - String namespace = "/" + CLUSTER_NAME; - _participants = new MockParticipantManager[NUM_NODES]; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - - _setupTool = new ClusterSetup(ZK_ADDR); - _setupTool.addCluster(CLUSTER_NAME, true); - + _gSetupTool.addCluster(CLUSTER_NAME, true); _participants = new MockParticipantManager[NUM_NODES]; for (int i = 0; i < NUM_NODES; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); - _setupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); } for (int i = 0; i < NUM_NODES; i++) { @@ -74,12 +64,25 @@ public class TestRoutingTableProviderFromCurrentStates extends ZkIntegrationTest @AfterClass public void afterClass() throws Exception { - _manager.disconnect(); + /** + * shutdown order: 1) disconnect the controller 2) disconnect participants + */ + if (_controller != null && _controller.isConnected()) { + _controller.syncStop(); + } for (int i = 0; i < NUM_NODES; i++) { if (_participants[i] != null && _participants[i].isConnected()) { - _participants[i].reset(); + _participants[i].syncStop(); } } + if (_manager != null && _manager.isConnected()) { + _manager.disconnect(); + } + + String namespace = "/" + CLUSTER_NAME; + if (_gZkClient.exists(namespace)) { + _gSetupTool.deleteCluster(CLUSTER_NAME); + } } @Test @@ -90,8 +93,8 @@ public class TestRoutingTableProviderFromCurrentStates extends ZkIntegrationTest try { String db1 = "TestDB-1"; - _setupTool.addResourceToCluster(CLUSTER_NAME, db1, NUM_PARTITIONS, "MasterSlave", IdealState.RebalanceMode.FULL_AUTO.name()); - _setupTool.rebalanceStorageCluster(CLUSTER_NAME, db1, NUM_REPLICAS); + _gSetupTool.addResourceToCluster(CLUSTER_NAME, db1, NUM_PARTITIONS, "MasterSlave", IdealState.RebalanceMode.FULL_AUTO.name()); + _gSetupTool.rebalanceStorageCluster(CLUSTER_NAME, db1, NUM_REPLICAS); Thread.sleep(200); HelixClusterVerifier clusterVerifier = @@ -99,19 +102,19 @@ public class TestRoutingTableProviderFromCurrentStates extends ZkIntegrationTest Assert.assertTrue(clusterVerifier.verify()); IdealState idealState1 = - _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db1); + _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db1); validate(idealState1, routingTableEV, routingTableCurrentStates); // add new DB String db2 = "TestDB-2"; - _setupTool.addResourceToCluster(CLUSTER_NAME, db2, NUM_PARTITIONS, "MasterSlave", IdealState.RebalanceMode.FULL_AUTO.name()); - _setupTool.rebalanceStorageCluster(CLUSTER_NAME, db2, NUM_REPLICAS); + _gSetupTool.addResourceToCluster(CLUSTER_NAME, db2, NUM_PARTITIONS, "MasterSlave", IdealState.RebalanceMode.FULL_AUTO.name()); + _gSetupTool.rebalanceStorageCluster(CLUSTER_NAME, db2, NUM_REPLICAS); Thread.sleep(200); Assert.assertTrue(clusterVerifier.verify()); IdealState idealState2 = - _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db2); + _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db2); validate(idealState2, routingTableEV, routingTableCurrentStates); // shutdown an instance http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderFromTargetEV.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderFromTargetEV.java b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderFromTargetEV.java index 16a759e..3d23e30 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderFromTargetEV.java +++ b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderFromTargetEV.java @@ -9,7 +9,7 @@ import org.apache.helix.HelixManager; import org.apache.helix.HelixManagerFactory; import org.apache.helix.InstanceType; import org.apache.helix.PropertyType; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.integration.task.WorkflowGenerator; @@ -19,15 +19,13 @@ import org.apache.helix.model.IdealState; import org.apache.helix.model.InstanceConfig; import org.apache.helix.participant.StateMachineEngine; import org.apache.helix.spectator.RoutingTableProvider; -import org.apache.helix.tools.ClusterSetup; import org.testng.Assert; import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; -public class TestRoutingTableProviderFromTargetEV extends ZkIntegrationTestBase { +public class TestRoutingTableProviderFromTargetEV extends ZkTestBase { private HelixManager _manager; - private ClusterSetup _setupTool; private final String MASTER_SLAVE_STATE_MODEL = "MasterSlave"; private final int NUM_NODES = 10; protected int NUM_PARTITIONS = 20; @@ -40,25 +38,19 @@ public class TestRoutingTableProviderFromTargetEV extends ZkIntegrationTestBase @BeforeClass public void beforeClass() throws Exception { - String namespace = "/" + CLUSTER_NAME; _participants = new MockParticipantManager[NUM_NODES]; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - - _setupTool = new ClusterSetup(ZK_ADDR); - _setupTool.addCluster(CLUSTER_NAME, true); + _gSetupTool.addCluster(CLUSTER_NAME, true); _participants = new MockParticipantManager[NUM_NODES]; for (int i = 0; i < NUM_NODES; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); - _setupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); } - _setupTool.addResourceToCluster(CLUSTER_NAME, WorkflowGenerator.DEFAULT_TGT_DB, NUM_PARTITIONS, + _gSetupTool.addResourceToCluster(CLUSTER_NAME, WorkflowGenerator.DEFAULT_TGT_DB, NUM_PARTITIONS, MASTER_SLAVE_STATE_MODEL, IdealState.RebalanceMode.FULL_AUTO.name()); - _setupTool + _gSetupTool .rebalanceStorageCluster(CLUSTER_NAME, WorkflowGenerator.DEFAULT_TGT_DB, NUM_REPLICAS); for (int i = 0; i < NUM_NODES; i++) { @@ -85,12 +77,22 @@ public class TestRoutingTableProviderFromTargetEV extends ZkIntegrationTestBase @AfterClass public void afterClass() throws Exception { - _manager.disconnect(); + if (_controller != null && _controller.isConnected()) { + _controller.syncStop(); + } for (int i = 0; i < NUM_NODES; i++) { if (_participants[i] != null && _participants[i].isConnected()) { - _participants[i].reset(); + _participants[i].syncStop(); } } + if (_manager != null && _manager.isConnected()) { + _manager.disconnect(); + } + + String namespace = "/" + CLUSTER_NAME; + if (_gZkClient.exists(namespace)) { + _gSetupTool.deleteCluster(CLUSTER_NAME); + } } @Test (expectedExceptions = HelixException.class) @@ -135,7 +137,7 @@ public class TestRoutingTableProviderFromTargetEV extends ZkIntegrationTestBase Assert.assertEquals(targetExternalViewMasters.size(), NUM_NODES); // TargetExternalView MASTERS mapping should exactly match IdealState MASTERS mapping - Map<String, Map<String, String>> stateMap = _setupTool.getClusterManagementTool() + Map<String, Map<String, String>> stateMap = _gSetupTool.getClusterManagementTool() .getResourceIdealState(CLUSTER_NAME, WorkflowGenerator.DEFAULT_TGT_DB).getRecord().getMapFields(); Set<String> idealMasters = new HashSet<>(); http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderPeriodicRefresh.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderPeriodicRefresh.java b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderPeriodicRefresh.java index dac7617..0a922cf 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderPeriodicRefresh.java +++ b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableProviderPeriodicRefresh.java @@ -10,7 +10,7 @@ import org.apache.helix.HelixManagerFactory; import org.apache.helix.InstanceType; import org.apache.helix.NotificationContext; import org.apache.helix.PropertyType; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.model.BuiltInStateModelDefinitions; @@ -27,7 +27,7 @@ import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; -public class TestRoutingTableProviderPeriodicRefresh extends ZkIntegrationTestBase { +public class TestRoutingTableProviderPeriodicRefresh extends ZkTestBase { private static final org.slf4j.Logger logger = LoggerFactory.getLogger(TestRoutingTableProviderPeriodicRefresh.class); private static final String STATE_MODEL = BuiltInStateModelDefinitions.MasterSlave.name(); http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableSnapshot.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableSnapshot.java b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableSnapshot.java index 118387c..b451e4a 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableSnapshot.java +++ b/helix-core/src/test/java/org/apache/helix/integration/spectator/TestRoutingTableSnapshot.java @@ -6,14 +6,13 @@ import org.apache.helix.HelixManager; import org.apache.helix.HelixManagerFactory; import org.apache.helix.InstanceType; import org.apache.helix.PropertyType; -import org.apache.helix.integration.common.ZkIntegrationTestBase; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.integration.manager.ClusterControllerManager; import org.apache.helix.integration.manager.MockParticipantManager; import org.apache.helix.model.IdealState; import org.apache.helix.model.InstanceConfig; import org.apache.helix.spectator.RoutingTableProvider; import org.apache.helix.spectator.RoutingTableSnapshot; -import org.apache.helix.tools.ClusterSetup; import org.apache.helix.tools.ClusterVerifiers.BestPossibleExternalViewVerifier; import org.apache.helix.tools.ClusterVerifiers.HelixClusterVerifier; import org.testng.Assert; @@ -22,9 +21,8 @@ import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; -public class TestRoutingTableSnapshot extends ZkIntegrationTestBase { +public class TestRoutingTableSnapshot extends ZkTestBase { private HelixManager _manager; - private ClusterSetup _setupTool; private final int NUM_NODES = 10; protected int NUM_PARTITIONS = 20; protected int NUM_REPLICAS = 3; @@ -35,19 +33,13 @@ public class TestRoutingTableSnapshot extends ZkIntegrationTestBase { @BeforeClass public void beforeClass() throws Exception { - String namespace = "/" + CLUSTER_NAME; _participants = new MockParticipantManager[NUM_NODES]; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - - _setupTool = new ClusterSetup(ZK_ADDR); - _setupTool.addCluster(CLUSTER_NAME, true); + _gSetupTool.addCluster(CLUSTER_NAME, true); _participants = new MockParticipantManager[NUM_NODES]; for (int i = 0; i < NUM_NODES; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (START_PORT + i); - _setupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); } for (int i = 0; i < NUM_NODES; i++) { @@ -82,8 +74,8 @@ public class TestRoutingTableSnapshot extends ZkIntegrationTestBase { try { String db1 = "TestDB-1"; - _setupTool.addResourceToCluster(CLUSTER_NAME, db1, NUM_PARTITIONS, "MasterSlave", IdealState.RebalanceMode.FULL_AUTO.name()); - _setupTool.rebalanceStorageCluster(CLUSTER_NAME, db1, NUM_REPLICAS); + _gSetupTool.addResourceToCluster(CLUSTER_NAME, db1, NUM_PARTITIONS, "MasterSlave", IdealState.RebalanceMode.FULL_AUTO.name()); + _gSetupTool.rebalanceStorageCluster(CLUSTER_NAME, db1, NUM_REPLICAS); Thread.sleep(200); HelixClusterVerifier clusterVerifier = @@ -91,7 +83,7 @@ public class TestRoutingTableSnapshot extends ZkIntegrationTestBase { Assert.assertTrue(clusterVerifier.verify()); IdealState idealState1 = - _setupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db1); + _gSetupTool.getClusterManagementTool().getResourceIdealState(CLUSTER_NAME, db1); RoutingTableSnapshot routingTableSnapshot = routingTableProvider.getRoutingTableSnapshot(); validateMapping(idealState1, routingTableSnapshot); @@ -102,8 +94,8 @@ public class TestRoutingTableSnapshot extends ZkIntegrationTestBase { // add new DB and shutdown an instance String db2 = "TestDB-2"; - _setupTool.addResourceToCluster(CLUSTER_NAME, db2, NUM_PARTITIONS, "MasterSlave", IdealState.RebalanceMode.FULL_AUTO.name()); - _setupTool.rebalanceStorageCluster(CLUSTER_NAME, db2, NUM_REPLICAS); + _gSetupTool.addResourceToCluster(CLUSTER_NAME, db2, NUM_PARTITIONS, "MasterSlave", IdealState.RebalanceMode.FULL_AUTO.name()); + _gSetupTool.rebalanceStorageCluster(CLUSTER_NAME, db2, NUM_REPLICAS); // shutdown an instance _participants[0].syncStop(); http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/task/TaskTestBase.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/task/TaskTestBase.java b/helix-core/src/test/java/org/apache/helix/integration/task/TaskTestBase.java index d1f0891..ab29607 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/task/TaskTestBase.java +++ b/helix-core/src/test/java/org/apache/helix/integration/task/TaskTestBase.java @@ -28,7 +28,6 @@ import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; public class TaskTestBase extends TaskSynchronizedTestBase { - protected ClusterControllerManager _controller; @BeforeClass public void beforeClass() throws Exception { @@ -39,14 +38,6 @@ public class TaskTestBase extends TaskSynchronizedTestBase { _controller = new ClusterControllerManager(ZK_ADDR, CLUSTER_NAME, controllerName); _controller.syncStart(); - boolean result = ClusterStateVerifier.verifyByZkCallback( - new ClusterStateVerifier.BestPossAndExtViewZkVerifier(ZK_ADDR, CLUSTER_NAME)); - Assert.assertTrue(result); - } - - @AfterClass - public void afterClass() throws Exception { - super.afterClass(); - _controller.syncStop(); + Assert.assertTrue(_clusterVerifier.verify()); } } http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/task/TestBatchAddJobs.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/task/TestBatchAddJobs.java b/helix-core/src/test/java/org/apache/helix/integration/task/TestBatchAddJobs.java index d50845e..36bbfa7 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/task/TestBatchAddJobs.java +++ b/helix-core/src/test/java/org/apache/helix/integration/task/TestBatchAddJobs.java @@ -2,15 +2,12 @@ package org.apache.helix.integration.task; import java.util.ArrayList; import java.util.Collections; -import java.util.Iterator; import java.util.List; import java.util.UUID; import org.apache.helix.HelixManager; import org.apache.helix.HelixManagerFactory; import org.apache.helix.InstanceType; -import org.apache.helix.TestHelper; -import org.apache.helix.integration.common.ZkIntegrationTestBase; -import org.apache.helix.integration.manager.MockParticipantManager; +import org.apache.helix.common.ZkTestBase; import org.apache.helix.task.JobConfig; import org.apache.helix.task.JobDag; import org.apache.helix.task.JobQueue; @@ -23,7 +20,7 @@ import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; -public class TestBatchAddJobs extends ZkIntegrationTestBase { +public class TestBatchAddJobs extends ZkTestBase { private static final String CLUSTER_NAME = CLUSTER_PREFIX + "_TestBatchAddJobs"; private static final String QUEUE_NAME = "TestBatchAddJobQueue"; private ClusterSetup _setupTool; @@ -31,15 +28,9 @@ public class TestBatchAddJobs extends ZkIntegrationTestBase { @BeforeClass public void beforeClass() { - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - _setupTool = new ClusterSetup(ZK_ADDR); _setupTool.addCluster(CLUSTER_NAME, true); _submitJobTasks = new ArrayList<>(); - } @Test http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/task/TestIndependentTaskRebalancer.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/task/TestIndependentTaskRebalancer.java b/helix-core/src/test/java/org/apache/helix/integration/task/TestIndependentTaskRebalancer.java index 28d182b..5540bbf 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/task/TestIndependentTaskRebalancer.java +++ b/helix-core/src/test/java/org/apache/helix/integration/task/TestIndependentTaskRebalancer.java @@ -64,17 +64,11 @@ public class TestIndependentTaskRebalancer extends TaskTestBase { @BeforeClass public void beforeClass() throws Exception { _participants = new MockParticipantManager[_numNodes]; - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - // Setup cluster and instances - ClusterSetup setupTool = new ClusterSetup(ZK_ADDR); - setupTool.addCluster(CLUSTER_NAME, true); + _gSetupTool.addCluster(CLUSTER_NAME, true); for (int i = 0; i < _numNodes; i++) { String storageNodeName = PARTICIPANT_PREFIX + "_" + (_startPort + i); - setupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); + _gSetupTool.addInstanceToCluster(CLUSTER_NAME, storageNodeName); } // start dummy participants http://git-wip-us.apache.org/repos/asf/helix/blob/c0d5792b/helix-core/src/test/java/org/apache/helix/integration/task/TestJobFailure.java ---------------------------------------------------------------------- diff --git a/helix-core/src/test/java/org/apache/helix/integration/task/TestJobFailure.java b/helix-core/src/test/java/org/apache/helix/integration/task/TestJobFailure.java index 5eb462b..a2608c5 100644 --- a/helix-core/src/test/java/org/apache/helix/integration/task/TestJobFailure.java +++ b/helix-core/src/test/java/org/apache/helix/integration/task/TestJobFailure.java @@ -46,8 +46,6 @@ import org.testng.annotations.DataProvider; import org.testng.annotations.Test; public final class TestJobFailure extends TaskSynchronizedTestBase { - - private ClusterControllerManager _controller; private final String DB_NAME = WorkflowGenerator.DEFAULT_TGT_DB; @BeforeClass @@ -58,13 +56,7 @@ public final class TestJobFailure extends TaskSynchronizedTestBase { _numReplicas = 1; // only Master, no Slave _numDbs = 1; - String namespace = "/" + CLUSTER_NAME; - if (_gZkClient.exists(namespace)) { - _gZkClient.deleteRecursively(namespace); - } - - _setupTool = new ClusterSetup(ZK_ADDR); - _setupTool.addCluster(CLUSTER_NAME, true); + _gSetupTool.addCluster(CLUSTER_NAME, true); setupParticipants(); setupDBs(); startParticipants();
