Remove a peer from the Raft quorum only if the load balancer would allow a new one to be added.
#1 218 ouverte le 17 avr. 2019
Métriques du dépôt
- Stars
- (8 229 stars)
- Métriques de merge PR
- (Merge moyen 17j 21h) (92 PRs mergées en 30 j)
Description
Jira Link: DB-2435 Currently, Raft groups independently kick out a failed peer from the quorum independently. However, adding new peers into the quorum is controlled by the master/load-balancer and throttled to limit the number of concurrent remote bootstraps.
We should make this symmetric so that a failed peer is kicked out of the quorum only when the load balancer actually has the bandwidth to add some other node to the quorum.
So, instead of a failed peer losing all the tablets that he had after 5 mins of absence, the new behavior will be to remove the failed peer from the tablets he owns in a throttled fashion. So, if he were to come back before the system has moved away all his tablets, he can start off from where he left on those tablets.
(This may require #1217 for this to be effective.)