Apache9 edited a comment on pull request #2237:
URL: https://github.com/apache/hbase/pull/2237#issuecomment-674372607


   > didn't the coming up master region that store the meta location in 
HBASE-24408 and PR#1746 solve our conflict of interests that we don't need to 
relaying on ZK for getting the server name (old host) for the meta region ? 
such even if we don't have the ZK, we can move on and don't submit the 
InitMetaProcedure because the state of the meta region is not OFFLINE.
   
   HBASE-24388 is only on a feature branch and we are still discussing whether 
to go this way... There is another solution to introduce a general root table, 
then we will have InitRootProcedure and the state of the root region is still 
on zookeeper. Of course I'm a sponsor of HBASE-24388 as it is implemented by 
me...
   And I'm a fan of removing zookeeper dependency completely if possible(or at 
least just use it as an external storage so on cloud we could easily use other 
storage systems to replace it, such as dynamodb).
   
   > [update] I will follow your suggestion and throws a exception if we find 
the meta table is not empty/partial
   
   Yes let's do this first to prevent damaging a cluster.
   
   And in general, I do not think it is very hard to introduce a tool for your 
scenario? Just put a dummy meta state node on zookeeper can solve the problem. 
And for the regions, as said before, you'd better disable them allbefore 
shutting down the old cluster, and after starting the new cluster, enable them. 
Even if you do not do this, I think you could just scan the meta regions, to 
find out all the recorded region servers and schedule HBCKSCP for them to get 
the cluster back.


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


Reply via email to