hashicorp / hashicorp/raft

Implications of LeaderLeaseTimeout being shorter than HeartbeatTimeout

Open
#652 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
9.1k
Forks
1.1k
Avg merge
3h 27m
Merged PRs (30d)
2

Description

LeaderLeaseTimeout is commented as
`LeaderLeaseTimeout is used to control how long the "lease" lasts for being the leader without being able to contact a quorum of nodes. If we reach this interval without contact, we will step down as leader.`
In default config, the HeartbeatTimeout is one second and LeaderLeaseTimeout is half second.
Does this configuration force the leader to step down even if heartbeats are being sent and received regularly on average, but just not frequently enough within the lease period?

Contributor guide

Open the contributing guide

Research direction

Start by tracing the Go definitions and default configuration for LeaderLeaseTimeout and HeartbeatTimeout, then inspect the leader lease decision path. Confirm whether regular heartbeats can still miss the shorter lease window; done is a documented, maintainer-approved explanation of their interaction and any resulting configuration guidance.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.