etcd-io / etcd-io/raft

make `StepDownOnRemoval` the default behavior

Open
#83 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
1.1k
Forks
273
Avg merge
4h 12m
Merged PRs (30d)
10

Description

In #79, we added `StepDownOnRemoval`, which makes a leader step down to follower after removing itself from the group or demoting itself to learner. Without this, the old leader may keep heartbeating even though it's no longer part of the group, and it can't propose anything.

However, for backwards compatibility reasons, this behavior is off by default. In 4.0, we should always do this and remove the setting.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the StepDownOnRemoval implementation and the setting's callers, then inspect the behavior added in #79 for removal and demotion to learner. Remove the setting and verify that both paths always make the leader step down, using any existing tests around those operations as the completion check.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.