saintstack commented on pull request #2237:
URL: https://github.com/apache/hbase/pull/2237#issuecomment-701935647


   > I am currently -1 on the implementation pending answers to my questions. I 
have not been able to find any valid failure modes that will cause data loss or 
corrupting actions if hbase:meta is onlined. If this is true, we can make 
InitMetaProcedure idempotent (see above) and we can handle any 
InitMetaProcedure failure condition.
   
   @z-york  Is clumsy operator deleting the meta location znode by mistake a 
valid failure mode? Throw in a Master restart soon after (Will IMP run? If so, 
double assign of meta if the rest of the cluster was up at the time which can 
make for dataloss as the two meta Regions fight over what hfiles make up the 
meta Region).
   
   The dataloss will be worse though if we just blanket delete meta dir if it 
exists already when IMP runs.
   
   bq. ....but I don't see a clear agreement among everyone from whether we 
should continue the bootstrap or fail hard on the bootstrap when we find the 
meta table in InitMetaProcedure.
   
   Dunno. Its called IMP. When it runs, there is supposed to be no meta. If 
there is, then something is not right: i.e. see above clumsy operator. 
Shouldn't remove the meta dir though if exists already? Fail the master 
startup? HBCK2 time?
   
   Could do Zach's idea of making it idempotent but IMP scope does not cover 
writing location in zk so can't have this as a 'step' in IMP.  What about 
adding extra step before assign where we wait asking Master a question about 
the cluster state such as if any of the RSs that are checking in have Regions 
on them; i.e. if Regions already assigned, if an already 'up' cluster? Would 
that help?
   
   You fellows don't want to have to run a script beforehand? ZK is up and just 
put an empty location up or ask Master or hbck2 to do it for you? You just want 
the cluster to start up over hfiles?  Thanks.
   
   
   
   
   


----------------------------------------------------------------
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:
us...@infra.apache.org


Reply via email to