Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement raft prevote to prevent unnecessary leader election/change. #3108

Closed
kikimo opened this issue Oct 17, 2021 · 1 comment · Fixed by #3322
Closed

Implement raft prevote to prevent unnecessary leader election/change. #3108

kikimo opened this issue Oct 17, 2021 · 1 comment · Fixed by #3322
Assignees
Labels
type/feature req Type: feature request
Milestone

Comments

@kikimo
Copy link
Contributor

kikimo commented Oct 17, 2021

Is your feature request related to a problem? Please describe.

There is no prevote in current raft implementation, when network partition happends and recovers later, a rejoin server may disrupt the cluster by starting a new election.

Describe the solution you'd like

On the paper CONSENSUS: BRIDGING THEORY AND PRACTICE 9.6(fulll version of raft paper), there describe a way called pre-vote to avoid this situation.

Describe alternatives you've considered

Additional context
Add any other context or screenshots about the feature request here.

@critical27
Copy link
Contributor

I have implemented one more than one year ago, it is almost same as current implementation. The leaderElection in our code is a pre-vote.

Will focus on more serious problem of raft in 3.0. Could pick my PR later if really necessary.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/feature req Type: feature request
Projects
No open projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants