ndimiduk commented on a change in pull request #1933:
URL: https://github.com/apache/hbase/pull/1933#discussion_r443803523
##########
File path:
hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
##########
@@ -1957,17 +1959,27 @@ public boolean normalizeRegions() throws IOException {
continue;
}
- // as of this writing, `plan.execute()` is non-blocking, so there's
no artificial rate-
- // limiting of merge requests due to this serial loop.
+ // as of this writing, `plan.submit()` is non-blocking and uses
Async Admin APIs to
+ // submit task , so there's no artificial rate-
+ // limiting of merge/split requests due to this serial loop.
for (NormalizationPlan plan : plans) {
- plan.execute(admin);
+ Future<Void> future = plan.submit(admin);
+ submittedPlanList.add(future);
if (plan.getType() == PlanType.SPLIT) {
splitPlanCount++;
} else if (plan.getType() == PlanType.MERGE) {
mergePlanCount++;
}
}
}
+ for (Future<?> submittedPlan : submittedPlanList) {
+ try {
+ submittedPlan.get();
+ } catch (Exception e) {
+ normalizationPlanFailureCount++;
Review comment:
Maybe we don't actually want to log "plans succeeded". Maybe it's enough
that we log "N plans submitted". I would be okay with that. Even better if the
debug level could log the PIDs of the submitted plans, which, I believe,
requires going through `MasterServices`.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]