public static class TestAssignmentManager.MockedLoadBalancer extends StochasticLoadBalancer
BaseLoadBalancer.ClusterKEEP_REGION_LOADS, MAX_RUNNING_TIME_KEY, MAX_STEPS_KEY, STEPS_PER_REGION_KEYclusterStatus, config, masterServerName, metricsBalancer, rackManager, regionFinder, services, slop, TABLES_ON_MASTER, tablesOnMasterBOGUS_SERVER_NAME| Constructor and Description |
|---|
MockedLoadBalancer() |
| Modifier and Type | Method and Description |
|---|---|
ServerName |
randomAssignment(HRegionInfo regionInfo,
java.util.List<ServerName> servers)
Used to assign a single region to a random server.
|
java.util.Map<ServerName,java.util.List<HRegionInfo>> |
retainAssignment(java.util.Map<HRegionInfo,ServerName> regions,
java.util.List<ServerName> servers)
Generates a bulk assignment startup plan, attempting to reuse the existing
assignment information from META, but adjusting for the specified list of
available/online servers available for assignment.
|
void |
setGateVariable(java.util.concurrent.atomic.AtomicBoolean gate) |
areSomeRegionReplicasColocated, balanceCluster, balanceCluster, composeAttributeName, computeCost, getCostFunctionNames, initCosts, onConfigurationChange, setClusterStatus, setConf, setMasterServices, setSlop, updateCostsWithAction, updateMetricsSizeassignMasterRegions, balanceMasterRegions, createCluster, getConf, getRegionAssignmentsByServer, getTablesOnMaster, immediateAssignment, initialize, isStopped, needsBalance, regionOffline, regionOnline, roundRobinAssignment, setRackManager, shouldBeOnMaster, stop, tablesOnMasterpublic void setGateVariable(java.util.concurrent.atomic.AtomicBoolean gate)
public ServerName randomAssignment(HRegionInfo regionInfo, java.util.List<ServerName> servers)
BaseLoadBalancerrandomAssignment in interface LoadBalancerrandomAssignment in class BaseLoadBalancerregionInfo - Region for which this selection is being done.public java.util.Map<ServerName,java.util.List<HRegionInfo>> retainAssignment(java.util.Map<HRegionInfo,ServerName> regions, java.util.List<ServerName> servers)
BaseLoadBalancerTakes a map of all regions to their existing assignment from META. Also takes a list of online servers for regions to be assigned to. Attempts to retain all assignment, so in some instances initial assignment will not be completely balanced.
Any leftover regions without an existing server to be assigned to will be assigned randomly to available servers.
retainAssignment in interface LoadBalancerretainAssignment in class BaseLoadBalancerregions - regions and existing assignment from metaservers - available servers