问题
Hbase hbck runs successfully and there is no inconsistency, but out of three regions which struck in transition state ( 2 out of 3 is in CLOSED state and 1 is in FAILED_OPEN) state. ( all three regions are part of one single Table)
Since HBASE is in consistent state , there is no issue in Hbase operation, but I am not able to run balancer since regions struck in Transition state.
How to remove/move these regions out of transition.
I tried below command before posting this question.
hbase hbck <Table_Name>
hbase hack -fix <Table_Name>
hbase hack -repair <Table_Name>
hbase hbck -fixHdfsHoles -fixHdfsOrphans <Table_Name>
Also there is no directory on these region names
enter code here
hdfs dfs -ls /hbase/data/default/<Table_name> | grep de0efd872dc4b3dca6929213f4fbe582
hdfs dfs -ls /hbase/data/default/<Table_name> | grep ab6a101fb92de7150562664ca841ac0d
hdfs dfs -ls /hbase/data/default/<Table_name> | grep 068a2b30ada2b9a2958b3815b7f32dfc
回答1:
I was able to solve the problem by deleting the nodes related to those particular regions which are struck using zkCli.sh
[zkshell: 6] delete /hbase-unsecure/region-in-transition/name_of_the_region_which_has_strck
Then I have restarted the hMaster ( there was no impact since we have HA setup for HMaster).
When I ran sudo -u hbase hbase hack , everything is fine and consistent.
来源:https://stackoverflow.com/questions/42539479/how-to-get-the-region-in-hbase-which-is-struck-in-failed-open-state