Class DistributeReplicasConditional
java.lang.Object
org.apache.hadoop.hbase.master.balancer.RegionPlanConditional
org.apache.hadoop.hbase.master.balancer.DistributeReplicasConditional
If enabled, this class will help the balancer ensure that replicas aren't placed on the same
servers or racks as their primary. Configure this via
BalancerConditionals.DISTRIBUTE_REPLICAS_KEY-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.hadoop.hbase.master.balancer.RegionPlanConditional
RegionPlanConditional.ValidationLevel -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionDistributeReplicasConditional(BalancerConditionals balancerConditionals, BalancerClusterState cluster) -
Method Summary
Modifier and TypeMethodDescriptionprivate booleancheckViolation(RegionInfo movingRegion, ReplicaKey movingReplicaKey, Set<RegionInfo> destinationRegions) (package private) List<RegionPlanConditionalCandidateGenerator>Get the candidate generator(s) for this conditional.(package private) static ReplicaKeygetReplicaKey(RegionInfo regionInfo) Returns aRegionPlanConditional.ValidationLevelthat is appropriate for this conditional.(package private) booleanisViolatingHost(RegionPlan regionPlan, Set<RegionInfo> hostRegions) (package private) booleanisViolatingRack(RegionPlan regionPlan, Set<RegionInfo> rackRegions) (package private) booleanisViolatingServer(RegionPlan regionPlan, Set<RegionInfo> serverRegions) Methods inherited from class org.apache.hadoop.hbase.master.balancer.RegionPlanConditional
isViolating, setClusterState
-
Field Details
-
candidateGenerators
-
-
Constructor Details
-
DistributeReplicasConditional
public DistributeReplicasConditional(BalancerConditionals balancerConditionals, BalancerClusterState cluster)
-
-
Method Details
-
getValidationLevel
Description copied from class:RegionPlanConditionalReturns aRegionPlanConditional.ValidationLevelthat is appropriate for this conditional.- Specified by:
getValidationLevelin classRegionPlanConditional- Returns:
- the validation level
-
getCandidateGenerators
Description copied from class:RegionPlanConditionalGet the candidate generator(s) for this conditional. This can be useful to provide the balancer with hints that will appease your conditional. Your conditionals will be triggered in order.- Specified by:
getCandidateGeneratorsin classRegionPlanConditional- Returns:
- the candidate generator for this conditional
-
isViolatingServer
- Specified by:
isViolatingServerin classRegionPlanConditional
-
isViolatingHost
- Overrides:
isViolatingHostin classRegionPlanConditional
-
isViolatingRack
- Overrides:
isViolatingRackin classRegionPlanConditional
-
checkViolation
private boolean checkViolation(RegionInfo movingRegion, ReplicaKey movingReplicaKey, Set<RegionInfo> destinationRegions) -
getReplicaKey
-