You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by GitBox <gi...@apache.org> on 2019/08/31 05:26:40 UTC

[GitHub] [hbase-operator-tools] busbey commented on a change in pull request #18: HBASE-22567 - HBCK2 addMissingRegionsToMeta

busbey commented on a change in pull request #18: HBASE-22567 - HBCK2 addMissingRegionsToMeta
URL: https://github.com/apache/hbase-operator-tools/pull/18#discussion_r319711604
 
 

 ##########
 File path: hbase-hbck2/src/main/java/org/apache/hbase/HBCK2.java
 ##########
 @@ -334,6 +444,58 @@ private static final String getCommandUsage() {
     writer.println("   Returns \"0\" SUCCESS code if it informed region state is changed, "
       + "\"1\" FAIL code otherwise.");
     writer.println();
+    writer.println(" " + ADD_MISSING_REGIONS_IN_META_FOR_TABLES + " <NAMESPACE|"
+      + "NAMESPACE:TABLENAME>...");
+    writer.println("   To be used in scenarios where some regions may be missing in META,");
+    writer.println("   but there's still a valid 'regioninfo metadata file on HDFS. ");
+    writer.println("   This is a lighter version of 'OfflineMetaRepair tool commonly used for ");
+    writer.println("   similar issues on 1.x release line. ");
+    writer.println("   This command needs META to be online. For each table name passed as");
+    writer.println("   parameter, it performs a diff between regions available in META, ");
+    writer.println("   against existing regions dirs on HDFS. Then, for region dirs with ");
+    writer.println("   no matches in META, it reads regioninfo metadata file and ");
+    writer.println("   re-creates given region in META. Regions are re-created in 'CLOSED' ");
+    writer.println("   state at META table only, but not in Masters' cache, and are not ");
+    writer.println("   assigned either. A rolling Masters restart, followed by a ");
+    writer.println("   hbck2 'assigns' command with all re-inserted regions is required. ");
+    writer.println("   This hbck2 'assigns' command is printed out after this command ");
+    writer.println("   completes for users subsequent convenience.");
+    writer.println("   WARNING: To avoid potential region overlapping problems due to ongoing ");
+    writer.println("   splits, this command attempts to disable given tables ");
+    writer.println("   (if it fails, disable is skipped) while re-inserting regions. ");
+    writer.println("   An example adding missing regions for tables 'tbl_1' on default ");
+    writer.println("   namespace, 'tbl_2' on namespace 'n1' and for all tables from ");
+    writer.println("   namespace 'n2': ");
+    writer.println("     $ HBCK2 addMissingRegionsInMeta default:tbl_1 n1:tbl_2 n2 ");
+    writer.println("   Returns hbck2 'assigns' command with all re-inserted regions.");
+    writer.println();
+    writer.println(" " + REPORT_MISSING_REGIONS_IN_META + " <NAMESPACE|"
 
 Review comment:
   given the recent additions in the main repo to automate gathering information about inconsistencies and exposing it in the master ui, should we put this report over there?

----------------------------------------------------------------
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:
users@infra.apache.org


With regards,
Apache Git Services