Repository: hbase Updated Branches: refs/heads/branch-2 c67f7f14e -> f32d3e1e2
HBASE-21327 Fix minor logging issue where we don't report servername if no associated SCP Signed-off-by: Duo Zhang <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/f32d3e1e Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/f32d3e1e Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/f32d3e1e Branch: refs/heads/branch-2 Commit: f32d3e1e2c92a9bed84be0305a8d7640e0ffcd0c Parents: c67f7f1 Author: Michael Stack <[email protected]> Authored: Tue Oct 16 21:21:02 2018 -0700 Committer: Michael Stack <[email protected]> Committed: Wed Oct 17 09:38:26 2018 -0700 ---------------------------------------------------------------------- .../hbase/master/RegionServerTracker.java | 4 ++-- .../master/balancer/StochasticLoadBalancer.java | 21 ++++++++------------ .../procedure/MasterProcedureScheduler.java | 5 ++++- 3 files changed, 14 insertions(+), 16 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/f32d3e1e/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionServerTracker.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionServerTracker.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionServerTracker.java index b2aedf0..f419732 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionServerTracker.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/RegionServerTracker.java @@ -126,8 +126,8 @@ public class RegionServerTracker extends ZKListener { // deadServersFromPE is made from a list of outstanding ServerCrashProcedures. // splittingServersFromWALDir are being actively split -- the directory in the FS ends in // '-SPLITTING'. Each splitting server should have a corresponding SCP. Log if not. - splittingServersFromWALDir.stream().map(s -> !deadServersFromPE.contains(s)). - forEach(s -> LOG.error("{} has no matching ServerCrashProcedure", s)); + splittingServersFromWALDir.stream().filter(s -> !deadServersFromPE.contains(s)). + forEach(s -> LOG.error("{} has no matching ServerCrashProcedure", s)); watcher.registerListener(this); synchronized (this) { List<String> servers = http://git-wip-us.apache.org/repos/asf/hbase/blob/f32d3e1e/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java index ba080a3..d134690 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/balancer/StochasticLoadBalancer.java @@ -431,21 +431,16 @@ public class StochasticLoadBalancer extends BaseLoadBalancer { updateStochasticCosts(tableName, curOverallCost, curFunctionCosts); if (initCost > currentCost) { plans = createRegionPlans(cluster); - if (LOG.isDebugEnabled()) { - LOG.debug("Finished computing new load balance plan. Computation took " - + (endTime - startTime) + "ms to try " + step - + " different iterations. Found a solution that moves " - + plans.size() + " regions; Going from a computed cost of " - + initCost + " to a new cost of " + currentCost); - } - + LOG.info("Finished computing new load balance plan. Computation took {}" + + " to try {} different iterations. Found a solution that moves " + + "{} regions; Going from a computed cost of {}" + + " to a new cost of {}", java.time.Duration.ofMillis(endTime - startTime), + step, plans.size(), initCost, currentCost); return plans; } - if (LOG.isDebugEnabled()) { - LOG.debug("Could not find a better load balance plan. Tried " - + step + " different configurations in " + (endTime - startTime) - + "ms, and did not find anything with a computed cost less than " + initCost); - } + LOG.info("Could not find a better load balance plan. Tried {} different configurations in " + + "{}, and did not find anything with a computed cost less than {}", step, + java.time.Duration.ofMillis(endTime - startTime), initCost); return null; } http://git-wip-us.apache.org/repos/asf/hbase/blob/f32d3e1e/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.java index 0d38531..f7f5593 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/MasterProcedureScheduler.java @@ -687,7 +687,6 @@ public class MasterProcedureScheduler extends AbstractProcedureScheduler { boolean hasLock = true; final LockAndQueue[] regionLocks = new LockAndQueue[regionInfo.length]; for (int i = 0; i < regionInfo.length; ++i) { - LOG.info("{} checking lock on {}", procedure, regionInfo[i].getEncodedName()); assert regionInfo[i] != null; assert regionInfo[i].getTable() != null; assert regionInfo[i].getTable().equals(table): regionInfo[i] + " " + procedure; @@ -695,12 +694,16 @@ public class MasterProcedureScheduler extends AbstractProcedureScheduler { regionLocks[i] = locking.getRegionLock(regionInfo[i].getEncodedName()); if (!regionLocks[i].tryExclusiveLock(procedure)) { + LOG.info("Waiting on xlock for {} held by pid={}", procedure, + regionLocks[i].getExclusiveLockProcIdOwner()); waitProcedure(regionLocks[i], procedure); hasLock = false; while (i-- > 0) { regionLocks[i].releaseExclusiveLock(procedure); } break; + } else { + LOG.info("Took xlock for {}", procedure); } }
