[
https://issues.apache.org/jira/browse/HBASE-21745?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16854915#comment-16854915
]
Wellington Chevreuil commented on HBASE-21745:
----------------------------------------------
Thanks for the notes [~stack]! Yeah, it seems these meta issues are mostly
induced by poor practices, but still punches us in the face of supportability.
As for the tool, it's very simple, yet better than having to rebuild the whole
hbase dir and bulkload previous files. It indeed requires refinements, if we
want to port it to hbck2.
Briefly detailing, it takes a list of tables in the format of an hbase shell
meta scan result filtering by table:state cell. It can be easily obtained as:
_echo "scan 'hbase:meta'" | hbase shell | grep "column=table:state"._ It does
not assign regions, only checks for regions with _regioinfo_ in hdfs that are
missing in meta, then _put_ those in meta, in CLOSED state. At the end,
currently, it just prints an _assigns_ command with all the re-inserted
regions. It's up for an operator to run this resulting command with hbck2,
then, but if we want to make it more automated, we can sure submit APs. For the
META reinsertion phase, maybe we can make disable given table to ensure no key
range collision would happen, say in case an already existing region splits?
> Make HBCK2 be able to fix issues other than region assignment
> -------------------------------------------------------------
>
> Key: HBASE-21745
> URL: https://issues.apache.org/jira/browse/HBASE-21745
> Project: HBase
> Issue Type: Umbrella
> Components: hbase-operator-tools, hbck2
> Reporter: Duo Zhang
> Assignee: stack
> Priority: Critical
>
> This is what [~apurtell] posted on mailing-list, HBCK2 should support
> {quote}
> - Rebuild meta from region metadata in the filesystem, aka offline meta
> rebuild.
> - Fix assignment errors (undeployed regions, double assignments (yes,
> should not be possible), etc)
> - Fix region holes, overlaps, and other errors in the region chain
> - Fix failed split and merge transactions that have failed to roll back
> due to some bug (related to previous)
> - Enumerate store files to determine file level corruption and sideline
> corrupt files
> - Fix hfile link problems (dangling / broken)
> {quote}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)