You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ps...@apache.org on 2020/10/27 05:51:11 UTC

[hbase] branch branch-2.2 updated: HBASE-25219 Backport HBASE-24369 Provide more information about merged child regions in Hbck Overlaps section, which cannot be fixed immediately (#2589)

This is an automated email from the ASF dual-hosted git repository.

psomogyi pushed a commit to branch branch-2.2
in repository https://gitbox.apache.org/repos/asf/hbase.git


The following commit(s) were added to refs/heads/branch-2.2 by this push:
     new b213a22  HBASE-25219 Backport HBASE-24369 Provide more information about merged child regions in Hbck Overlaps section, which cannot be fixed immediately (#2589)
b213a22 is described below

commit b213a226510f50baa9e8d8de212903fc3a4a0a27
Author: Peter Somogyi <ps...@apache.org>
AuthorDate: Tue Oct 27 06:50:51 2020 +0100

    HBASE-25219 Backport HBASE-24369 Provide more information about merged child regions in Hbck Overlaps section, which cannot be fixed immediately (#2589)
    
    Signed-off-by: Viraj Jasani <vj...@apache.org>
    Signed-off-by: Jan Hentschel <ja...@ultratendency.com>
    Signed-off-by: Clara Xiong
    Signed-off-by: stack <st...@apache.org>
    
    Co-authored-by: huaxiangsun <hu...@apache.org>
---
 .../org/apache/hadoop/hbase/master/CatalogJanitor.java |  4 ++++
 .../src/main/resources/hbase-webapps/master/hbck.jsp   | 18 ++++++++++++++++--
 2 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/CatalogJanitor.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/CatalogJanitor.java
index 6208306..2f86d7e 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/CatalogJanitor.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/CatalogJanitor.java
@@ -473,6 +473,10 @@ public class CatalogJanitor extends ScheduledChore {
       return this.overlaps;
     }
 
+    public Map<RegionInfo, Result> getMergedRegions() {
+      return this.mergedRegions;
+    }
+
     public List<Pair<RegionInfo, ServerName>> getUnknownServers() {
       return unknownServers;
     }
diff --git a/hbase-server/src/main/resources/hbase-webapps/master/hbck.jsp b/hbase-server/src/main/resources/hbase-webapps/master/hbck.jsp
index d90827c..ac9cea0 100644
--- a/hbase-server/src/main/resources/hbase-webapps/master/hbck.jsp
+++ b/hbase-server/src/main/resources/hbase-webapps/master/hbck.jsp
@@ -236,6 +236,12 @@
             <div class="row inner_header">
               <div class="page-header">
                 <h2>Overlaps</h2>
+                <p>
+                  <span>
+                    Regions highlighted in <font color="blue">blue</font> are recently merged regions, HBase is still doing cleanup for them. Overlaps involving these regions cannot be fixed by <em>hbck2 fixMeta</em> at this moment.
+                    Please wait some time, run <i>catalogjanitor_run</i> in hbase shell, refresh ‘HBCK Report’ page, make sure these regions are not highlighted to start the fix.
+                  </span>
+                </p>
               </div>
             </div>
             <table class="table table-striped">
@@ -245,8 +251,16 @@
               </tr>
               <% for (Pair<RegionInfo, RegionInfo> p : report.getOverlaps()) { %>
               <tr>
-                <td><span title="<%= p.getFirst() %>"><%= p.getFirst().getEncodedName() %></span></td>
-                <td><span title="<%= p.getSecond() %>"><%= p.getSecond().getEncodedName() %></span></td>
+                <% if (report.getMergedRegions().containsKey(p.getFirst())) { %>
+                  <td><span style="color:blue;" title="<%= p.getFirst() %>"><%= p.getFirst().getEncodedName() %></span></td>
+                <% } else { %>
+                  <td><span title="<%= p.getFirst() %>"><%= p.getFirst().getEncodedName() %></span></td>
+                <% } %>
+                <% if (report.getMergedRegions().containsKey(p.getSecond())) { %>
+                  <td><span style="color:blue;" title="<%= p.getSecond() %>"><%= p.getSecond().getEncodedName() %></span></td>
+                <% } else { %>
+                  <td><span title="<%= p.getSecond() %>"><%= p.getSecond().getEncodedName() %></span></td>
+                <% } %>
               </tr>
               <% } %>