You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by me...@apache.org on 2020/10/06 07:43:55 UTC

[hbase] branch branch-2.2 updated: HBASE-25146 Add extra logging at info level to HFileCorruptionChecker in order to report progress (#2503)

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

meszibalu 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 2e9b9c8  HBASE-25146 Add extra logging at info level to HFileCorruptionChecker in order to report progress (#2503)
2e9b9c8 is described below

commit 2e9b9c8125acc38f989674b43af52f8c37ed4dbf
Author: Andor Molnár <an...@cloudera.com>
AuthorDate: Tue Oct 6 09:38:18 2020 +0200

    HBASE-25146 Add extra logging at info level to HFileCorruptionChecker in order to report progress (#2503)
    
    Signed-off-by: Wellington Chevreuil <we...@gmail.com>
    Signed-off-by: Mate Szalay-Beko <sz...@gmail.com>
    Signed-off-by: Balazs Meszaros <me...@apache.org>
---
 .../hadoop/hbase/util/hbck/HFileCorruptionChecker.java   | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/util/hbck/HFileCorruptionChecker.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/util/hbck/HFileCorruptionChecker.java
index f64f991..283f6a4 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/util/hbck/HFileCorruptionChecker.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/util/hbck/HFileCorruptionChecker.java
@@ -50,6 +50,7 @@ import org.apache.hadoop.hbase.util.FSUtils.FamilyDirFilter;
 import org.apache.hadoop.hbase.util.FSUtils.HFileFilter;
 import org.apache.hadoop.hbase.util.FSUtils.RegionDirFilter;
 
+
 /**
  * This class marches through all of the region's hfiles and verifies that
  * they are all valid files. One just needs to instantiate the class, use
@@ -180,6 +181,9 @@ public class HFileCorruptionChecker {
       missing.add(cfDir);
       return;
     }
+
+    LOG.info("Checking Column Family Directory {}. Number of entries = {}", cfDir, hfs.size());
+
     for (FileStatus hfFs : hfs) {
       Path hf = hfFs.getPath();
       checkHFile(hf);
@@ -213,6 +217,9 @@ public class HFileCorruptionChecker {
       missedMobFiles.add(cfDir);
       return;
     }
+
+    LOG.info("Checking MOB Column Family Directory {}. Number of entries = {}", cfDir, hfs.size());
+
     for (FileStatus hfFs : hfs) {
       Path hf = hfFs.getPath();
       checkMobFile(hf);
@@ -284,6 +291,9 @@ public class HFileCorruptionChecker {
       missedMobFiles.add(regionDir);
       return;
     }
+
+    LOG.info("Checking MOB Region Directory {}. Number of entries = {}", regionDir, hfs.length);
+
     for (FileStatus hfFs : hfs) {
       Path hf = hfFs.getPath();
       checkMobColFamDir(hf);
@@ -318,6 +328,8 @@ public class HFileCorruptionChecker {
       return;
     }
 
+    LOG.info("Checking Region Directory {}. Number of entries = {}", regionDir, cfs.size());
+
     for (FileStatus cfFs : cfs) {
       Path cfDir = cfFs.getPath();
       checkColFamDir(cfDir);
@@ -342,6 +354,8 @@ public class HFileCorruptionChecker {
       return;
     }
 
+    LOG.info("Checking Table Directory {}. Number of entries (including mob) = {}", tableDir, rds.size() + 1);
+
     // Parallelize check at the region dir level
     List<RegionDirChecker> rdcs = new ArrayList<>(rds.size() + 1);
     List<Future<Void>> rdFutures;
@@ -546,6 +560,8 @@ public class HFileCorruptionChecker {
         : "CORRUPTED";
 
     // print mob-related report
+    out.print("Checked " + mobFilesChecked.get() + " Mob files for corruption");
+    out.print("  Mob files corrupted:                  " + corruptedMobFiles.size());
     if (inQuarantineMode) {
       out.print("    Mob files successfully quarantined: " + quarantinedMobFiles.size());
       for (Path sq : quarantinedMobFiles) {