You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2012/09/18 23:46:04 UTC

svn commit: r1387372 - /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java

Author: stack
Date: Tue Sep 18 21:46:04 2012
New Revision: 1387372

URL: http://svn.apache.org/viewvc?rev=1387372&view=rev
Log:
HBASE-6779 Fix issues analysis.apache.org raises about StochasticLoadBalancer

Modified:
    hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java

Modified: hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java?rev=1387372&r1=1387371&r2=1387372&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java (original)
+++ hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java Tue Sep 18 21:46:04 2012
@@ -512,14 +512,14 @@ public class StochasticLoadBalancer exte
 
       // Now go through all of the tables we have seen and keep the max number
       // of regions of this table a single region server is hosting.
-      for (String tableName : tableRegionsOnCurrentServer.keySet()) {
-        Integer thisCount = tableRegionsOnCurrentServer.get(tableName).toInteger();
+      for (Entry<String, MutableInt> currentServerEntry: tableRegionsOnCurrentServer.entrySet()) {
+        String tableName = currentServerEntry.getKey();
+        Integer thisCount = currentServerEntry.getValue().toInteger();
         Integer maxCountSoFar = tableCostSeenSoFar.get(tableName);
 
         if (maxCountSoFar == null || thisCount.compareTo(maxCountSoFar) > 0) {
           tableCostSeenSoFar.put(tableName, thisCount);
         }
-
       }
     }
 
@@ -560,11 +560,6 @@ public class StochasticLoadBalancer exte
 
         max += 1;
 
-        // Only compute the data locality for moved regions.
-        if (initialRegionMapping.equals(sn)) {
-          continue;
-        }
-
         List<ServerName> dataOnServers = regionFinder.getTopBlockLocations(region);
 
         // If we can't find where the data is getTopBlock returns null.