Skip to content

Latest commit

 

History

History
50 lines (40 loc) · 6.7 KB

roadmap.md

File metadata and controls

50 lines (40 loc) · 6.7 KB

Roadmap

etcd uses GitHub milestones to track all tasks in each major or minor release. The roadmap.md file only records the most important tasks for each release. The list is based on the current maintainer capacity that may shift over time. Proposed milestones are what we think we can deliver with the people we have. If we have more support on the important stuff, we could pick up more items from the backlog. Note that etcd will continue to mainly focus on technical debt over the next few major or minor releases.

Each item has an assigned priority. Refer to priority definitions.

v3.6.0

For a full list of tasks in v3.6.0, please see milestone etcd-v3.6.

Title Priority Status Note
Support downgrade priority/important-soon In progress etcd will support downgrade starting from 3.6.0. But it will also support offline downgrade from 3.5 to 3.4.
StoreV2 deprecation priority/important-soon In progress This task will be covered in both 3.6 and 3.7.
Release raft 3.6.0 priority/important-soon Not started etcd 3.6.0 will depends on raft 3.6.0
Release bbolt 1.4.0 priority/important-soon Not started etcd 3.6.0 will depends on bbolt 1.4.0
Support /livez and /readyz endpoints priority/important-longterm In progress It provides clearer APIs, and can also work around the stalled writes issue
Bump gRPC priority/important-longterm Completed It isn't guaranteed to be resolved in 3.6, and might be postponed to 3.7 depending on the effort and risk.
Deprecate grpc-gateway or bump it priority/important-longterm Completed It isn't guaranteed to be resolved in 3.6, and might be postponed to 3.7 depending on the effort and risk.
bbolt: Add logger into bbolt priority/important-longterm Completed It's important to diagnose bbolt issues
bbolt: Add surgery commands priority/important-longterm Completed Surgery commands are important for fixing corrupted db files
Evaluate and (Gradulate or deprecate/remove) experimental features priority/backlog Not started This task will be covered in both 3.6 and 3.7.

v3.7.0

For a full list of tasks in v3.7.0, please see milestone etcd-v3.7.

Title Priority Note
StoreV2 deprecation P0 Finish the remaining tasks 3.7.
Refactor lease: Lease might be revoked by mistake by old leader P1 to be investigated & discussed
Integrate raft's new feature (async write) into etcd P1 It should improve the performance
bbolt: Support customizing the bbolt rebalance threshold P2 It may get rid of etcd's defragmentation. Both bbolt and etcd need to be changed.
Evaluate and (graduate or deprecate/remove) experimental features P2 Finish the remaining tasks 3.7.

Backlog (future releases)

Title Priority Note
Remove the dependency on grpc-go's experimental API
Protobuf: cleanup both golang/protobuf and gogo/protobuf
Proposals should include a merkle root
Add Distributed Tracing using OpenTelemetry
Support CA rotation
bbolt: Migrate all commands to cobra style commands
raft: enhance the configuration change validation