
# HBase文件丢失导致Region状态长时间为RIT
#### 用户问题
数据迁移到新集群后，HBase的Region状态为RIT或FAILED_OPEN。
#### 原因分析
1. 登录到集群的Core节点查看RegionServer日志，报错：
   - "Region'3b3ae24c65fc5094bc2acfebaa7a56de'"打开失败，Region状态被设置为FAILED_OPEN。
   
   - "Region'b7b3faab86527b88a92f2a248a54d3dc'"下的一个文件找不到报错FileNotFoundException。
    
2. 在HBase客户端中执行**hbase hbck** 命令检查Region，报错：
   ```
   ERROR: Found lingering reference file hdfs://hacluster/hbase/news_user_actions/3b3ae24c65fc5094bc2acfebaa7a56de/meta/0f47cda55fa44cf9aa2599079894aed6.b7b3faab86527b88a92f2a248a54d3dc
   ```
   从引用文件可以看出，'3b3ae24c65fc5094bc2acfebaa7a56de'Region是' b7b3faab86527b88a92f2a248a54d3dc'的子Region，子Region引用了父Region的文件，父Region的文件在迁移过程中因为未知原因丢失了，导致子Region找不到引用文件。
   这种异常并不能通过简单的重试可解决，所以Region会长时间处于RIT状态。
   
 
#### 处理步骤
1. 在HDFS客户端执行以下命令删除[2]查看到的残留文件：
   
   **hdfs dfs -rmr** *残留文件所在的HDFS路径*
   例如：
   **hdfs dfs -rmr** */hbase/news_user_actions/3b3ae24c65fc5094bc2acfebaa7a56de/meta/0f47cda55fa44cf9aa2599079894aed6.b7b3faab86527b88a92f2a248a54d3dc*
   
   
 
