Raft 集群进度
- Dominant language
- C++
- Stars
- 49
- Forks
- 8
- PR merge metrics
- No merged PRs in 30d
Description
## 待做事项
## raft
- [x] **实现 Redis Raft 命令**,实现 **RAFT.CLUSTER INIT**, **RAFT.CLUSTER JOIN**, **RAFT.NODE ADD**, **RAFT REMOVE** 命令 **@KKorpse & @Panlei-coder**
- [x] **引入 braft** **@Panlei-coder**
- [x] **Check Point** **@dingxiaoshuai123**
- [x] **apply 支持**,完成 `praft` 添加 `binlog` 和 `on_apply` 解析 `binlog` 并写入的逻辑 **@lonfar-ncy**
- [x] **braft log index 映射** **@lonfar-ncy**
- [x] **Raft** 快照支持 **@dingxiaoshuai123 & @Panlei-coder**
- [x] **flush event 时机** **@dingxiaoshuai123**
- [x] **on_spapshot_load 区分自己安装快照 vs 自己正在启动** **@Panlei-coder**
- [x] **braft** 快照自定义日志截断点 **@Panlei-coder**
- [x] **raft 读一致性的实现** **@Panlei-coder**
- [ ] **优雅关闭 pikiwidb** **@smx**
- [ ] **单独 cf 保存其它 cf flush 位点** **@文一**
- [ ] **braft 新增接口,判断两个 logindex 之间数据量** **@gkj**
- [ ] **日志截断优化**
## 主从
- [ ] **braft 主从模式** **@KKorpse**
- [ ] **PikiwiDB 主从命令** **@Panlei-coder**
## 测试
- [ ] **raft 测试** https://github.com/OpenAtomFoundation/pikiwidb/discussions/273
## 文档建设
- [ ] **raft 集群操作文档** **@Panlei-coder**
## 优化点
- [ ] **logindex 维护的多队列优化**
- [ ] **一个 rocksdb 一个 raft (优先级低)**
- [ ] **1 我们可以将主动 Leader Election 的功能关闭,这样就不需要维护 Leader Lease 的心跳了 OR 2 将复制组之间的心跳合并到节点之间的心跳 ref [braft raft](https://github.com/baidu/braft/blob/master/docs/cn/raft_protocol.md)**
Contributor guide
No contributing guide indexed for this repository
Research direction
This issue is a broad Raft roadmap with many completed and unchecked items, including graceful shutdown, replication, testing, and documentation. Start by reviewing the remaining checklist and the linked Raft testing discussion at https://github.com/OpenAtomFoundation/pikiwidb/discussions/273. A task is done only when its specific scope is completed, with the relevant tests or documentation updated where listed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- databases, distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 15/100