Resolve Region “found in META, but not in HDFS” issue in Hbase

When you are seeing the below ERROR messages in the logs then most probably there is a stale reference in the meta after the merge or split of regions

ERROR

ERROR: Region { meta => tbl_1,4845342330,16300002932.1e7faa32sjh34e08e940145469ad1., hdfs => null, deployed => ,16020,16300002932;tbl_1,4845342330,16300002932.1e7faa32sjh34e08e940145469ad1., replicaId => 0 } found in META, but not in HDFS, and deployed

Troubleshoot the issue:

To check further: Check if the regions have any data in the HDFS location.

hdfs dfs -ls -R /hbase/<table location>/<region dir>

Example:

hdfs dfs -ls -R /hbase/data/tbl_1/1e7faa32sjh34e08e940145469ad1

If you see there is no content on this location, it is confirmed there is a stale entry in the hbase:meta table

ls: /hbase/data/tbl_1/1e7faa32sjh34e08e940145469ad1: No such file or directory

Resolution:

If the above region location is empty, We can confirm that there is a stale entry in the base:meta table. But the actual table location is empty.

Now, We can run the below command to fix the meta-information

hbase hbck -j <hbck2.jar> extraRegionsInMeta   <namespace>:<tablename>  -f

You will see a message like ”INFO org.apache.hbase.HBCKMetaTableAccessor – Deleted” and should fix the issue

Good Luck with your learning, Like the post if it is helpful

Similar Posts