Umeshkumar9414 commented on PR #7075:
URL: https://github.com/apache/hbase/pull/7075#issuecomment-3044471576

   > And on the design doc, I think we missed several critial things.
   
   I tried to answer all you questions 
[here](https://docs.google.com/document/d/1CX9ysa5thq0vajXR2zapcMkfwTwV9VsW6xGXuxdN97M/edit?tab=t.0#heading=h.eqqyv9x906oh).
 Replying below as well.
   
   > For example, how do we deal with rolling upgrading? If we change the 
directory name of recover edits, could old region servers without the patch 
read the new directory?
   
   we are changing the name for temporary edit file, it is not shared. Only one 
worker should be using this name. So no issue in rolling upgrade.
    
   > And also, if we allow a new RS to split while the old RS may still be 
splitting, then while opening the region, how can we know which one we should 
read? 
   
   Both worker are using the same name for output recovered.edit files so 
result of both splitting will be same. Only change in this PR is related to 
intermediant temporary files.
   
   >And there could also be race that, even if we delete all the recovered 
edits directories before opening, since no one can make sure that the 'dead' RS 
is dead, what if the 'dead' RS write out the recovered edits file after 
opening? Then after the region is reassigned, it will load the recovered edits 
again, which causes data inconsistency...
   
   We always check the sequence id before applying the edits. If dead RS write 
recovered edits file after opening, in the next reassign/open we will just 
ignore the recovred.edit file. 
   


-- 
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.

To unsubscribe, e-mail: issues-unsubscr...@hbase.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to