saintstack commented on a change in pull request #2588:
URL: https://github.com/apache/hbase/pull/2588#discussion_r512196004



##########
File path: 
hbase-server/src/main/java/org/apache/hadoop/hbase/master/MetaFixer.java
##########
@@ -247,6 +247,10 @@ void fixOverlaps(CatalogJanitor.Report report) throws 
IOException {
       if (regionInfoWithlargestEndKey != null) {
         if (!isOverlap(regionInfoWithlargestEndKey, pair) ||
             currentMergeSet.size() >= maxMergeCount) {
+          // Log when we cut-off-merge because we hit the configured maximum 
merge limit.
+          if (currentMergeSet.size() >= maxMergeCount) {
+            LOG.warn("Ran into maximum-at-a-time merges limit={}", 
maxMergeCount);

Review comment:
       Good

##########
File path: 
hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
##########
@@ -135,8 +134,8 @@ private static void checkRegionsToMerge(MasterProcedureEnv 
env, final RegionInfo
           throw new MergeRegionException(msg);
         }
         if (!force && !ri.isAdjacent(previous) && !ri.isOverlap(previous)) {
-          String msg = "Unable to merge non-adjacent or non-overlapping 
regions " +
-              previous.getShortNameToLog() + ", " + ri.getShortNameToLog() + " 
when force=false";
+          String msg = "Unable to merge non-adjacent or non-overlapping 
regions '" +
+              previous.getShortNameToLog() + "', '" + ri.getShortNameToLog() + 
"' when force=false";

Review comment:
       nit: we need the ' characters? we don't usually do this?

##########
File path: 
hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
##########
@@ -479,16 +478,20 @@ private boolean prepareMergeRegion(final 
MasterProcedureEnv env) throws IOExcept
     for (RegionInfo ri: this.regionsToMerge) {
       if (!catalogJanitor.cleanMergeQualifier(ri)) {
         String msg = "Skip merging " + 
RegionInfo.getShortNameToLog(regionsToMerge) +
-            ", because parent " + RegionInfo.getShortNameToLog(ri) + " has a 
merge qualifier";
+            ", because a parent, " + RegionInfo.getShortNameToLog(ri) + ", has 
a merge qualifier " +
+          "(if a 'merge column' in parent, it was recently merged but still 
has outstanding " +
+          "references to its parents that must be cleared before it can 
participate in merge -- " +
+          "major compact it to hurry clearing of its references)";

Review comment:
       Good




----------------------------------------------------------------
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]


Reply via email to