Implement Server Version Gated Deferred Leader Initialization
- Dominant language
- Go
- Stars
- 30.1k
- Forks
- 4.6k
- Avg merge
- 2d 6h
- Merged PRs (30d)
- 43
Description
#### Feature Description
Today, when a Consul server is elected leader it does a number of things to initialize data within Raft. Many times this initialization is held back due to not all servers being updated yet and we cannot apply the various raft requests or else we could cause the other servers to panic.
We hold back performing those initialization routines but currently do nothing to cause most of them to get run once the necessary conditions are met. The only way to force them to be run is to force leadership to be transferred to another server. This is usually a manual process by operators if they even know about it.
We should implement a generic way of managing feature enablement/initialization on the leader.
#### Use Case(s)
Any upgrade to a version where we have added new leadership routines.
Contributor guide
Assessment
This issue has not been assessed yet.