virajjasani commented on issue #468: HBASE-22822 : Un/Re-schedule balancer 
chore with balance_switch
URL: https://github.com/apache/hbase/pull/468#issuecomment-520305714
 
 
   > IIRC, `gracefully_stop.sh` will turn balancer off, move regions, 
stop/restart RS, then turn balancer on.
   > 
   > And there's one script `rolling_restart.sh` relying on 
`gracefully_stop.sh`, will repeat the mentioned process. If the RS number in 
rolling restart is large which is often the case in production env---hundreds 
at least, the master inside will cancel and remove task then construct a new 
task back and forth, at JVM level.
   > 
   > One step back, current impl brings no harm to master nor good, but the new 
impl looks like may bring a new uncertainty.
   > 
   > I incline to keep it still, and so, leave my -0.
   
   graceful_stop.sh turns on balancer at the end conditionally. If -nob arg is 
provided, it won't: 
[here](https://github.com/apache/hbase/blob/master/bin/graceful_stop.sh#L178)
   rolling_restart.sh provides that arg 
[here](https://github.com/apache/hbase/blob/master/bin/rolling-restart.sh#L218)
   rolling_restart itself taking care of turning the balancer on/off makes 
sense rather than gracefu_stop taking care of it for rolling_restart. Even if 
it didn't, it could still run into the possibility of running balancer in 
between rolling restart of RegionServers, which should not happen provided we 
move regions back and forth anyways 
[here](https://github.com/apache/hbase/blob/e9382154f32d7b552eb42e262a22bc44f57a7f1b/bin/graceful_stop.sh#L170).

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