HuiHang-Yu edited a comment on issue #456: HBASE-22631 assign failed may make 
gced parent region appear again
URL: https://github.com/apache/hbase/pull/456#issuecomment-520335860
 
 
   @saintstack  Thank you for your comment. 
   Yes i was cofused by how to write a UT for it . How can i  simulate that the 
region can not  be open for hdfs problem (maybe like Missing table descriptor 
for in my assignProcedure.txt 
   
[assignProcedure.txt](https://github.com/apache/hbase/files/3491479/assignProcedure.txt)
    ) and can be opend in another regionserver for hdfs problem fixed. 
   The logic I modified is simple :
   RegionNode.offline()  makes region location to null and when the code  
execute the following line  
env.getAssignmentManager().undoRegionAsOpening(regionNode)  it will do nothing 
. So  the  regionstates in assignmanager will not remove this region from rs 
regions according to serverMap . So the serverMap will retain the relation rs 
tempt20 (for example in my assignProcedure.txt) <- region forever even the 
region is open in regionserver tempt21 (for example in my assignProcedure.txt) 
. 
   
![assign](https://user-images.githubusercontent.com/27949231/62852698-be3e5200-bd1c-11e9-8601-8deb51568dd2.png)
    When the rs tempt20 crash it will create a subprocedure assignprocedure for 
this region which may be open in another rs according to serverMap .  So the 
region info will be put into the meta table even if this region has been split 
and gced in another rs (delete from meta table) .
   
![splitAndGc](https://user-images.githubusercontent.com/27949231/62852716-d01ff500-bd1c-11e9-9a77-7414513aabbd.png)
  
   
![serverCrash](https://user-images.githubusercontent.com/27949231/62852736-e5951f00-bd1c-11e9-8289-8fe9b38e9f76.png)
   
   

----------------------------------------------------------------
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:
[email protected]


With regards,
Apache Git Services

Reply via email to