From af645f059094a9c9c0dbb17e45acb5be75bd698f Mon Sep 17 00:00:00 2001 From: Elliott Clark Date: Thu, 22 Aug 2013 15:26:24 -0700 Subject: [PATCH] HBASE-9310 Remove slop for Stochastic load balancer --- .../apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java | 9 +++++++-- .../hadoop/hbase/master/balancer/StochasticLoadBalancer.java | 6 ++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java index 3d390a5..54da5c4 100644 --- hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java +++ hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.java @@ -342,7 +342,7 @@ public abstract class BaseLoadBalancer implements LoadBalancer { } // slop for regions - private float slop; + protected float slop; private Configuration config; private static final Random RANDOM = new Random(System.currentTimeMillis()); private static final Log LOG = LogFactory.getLog(BaseLoadBalancer.class); @@ -352,12 +352,17 @@ public abstract class BaseLoadBalancer implements LoadBalancer { @Override public void setConf(Configuration conf) { - this.slop = conf.getFloat("hbase.regions.slop", (float) 0.2); + setSlop(conf); if (slop < 0) slop = 0; else if (slop > 1) slop = 1; + this.config = conf; } + protected void setSlop(Configuration conf) { + this.slop = conf.getFloat("hbase.regions.slop", (float) 0.2); + } + @Override public Configuration getConf() { return this.config; diff --git hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java index e00afbd..8876f7d 100644 --- hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java +++ hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java @@ -122,6 +122,7 @@ public class StochasticLoadBalancer extends BaseLoadBalancer { @Override public void setConf(Configuration conf) { super.setConf(conf); + regionFinder.setConf(conf); maxSteps = conf.getInt(MAX_STEPS_KEY, maxSteps); @@ -160,6 +161,11 @@ public class StochasticLoadBalancer extends BaseLoadBalancer { } @Override + protected void setSlop(Configuration conf) { + this.slop = conf.getFloat("hbase.regions.slop", 0.001F); + } + + @Override public void setClusterStatus(ClusterStatus st) { super.setClusterStatus(st); regionFinder.setClusterStatus(st); -- 1.7.10.2 (Apple Git-33)