Valkey
目录
记录我在 Valkey(Redis fork)上的贡献:缺陷修复、Raft / RDMA 相关特性,以及配套的 CVE 分析。
BugFix #
- 为什么多线程会出现问题的总结
- 多线程下 RDMA 的崩溃问题
- 多线程下 RDMA 的崩溃问题(无锁队列 IO 模型)
- valkey-benchmark 端 RDMA 丢失唤醒
- Valkey Over RDMA 测试中 server UAF
- valkey 32bit 构建头文件顺序问题
- 多线程下 RDB 文件 crash
- RESP3 push frame 被拆开(pubsub ≥ 16KiB)
- UAF:多 BLPOP 场景
- 防止同步重入导致的 UAF
- Client Side Caching:断开后反向索引未清理
Feature #
- Raft Cluster Pre-Vote
- Raft Cluster 非投票成员
- Raft Cluster valkey-cli 工具兼容
- 基于 Raft 的 cluster bus(Cluster V2)
- Valkey Over RDMA:多线程测试框架
- RDMA 库运行时动态加载
Security #
- CVE-2026-27623:畸形 RESP 预认证 DoS
- CVE-2026-25243:RESTORE 非法内存访问 / RCE
- RDB_OPCODE_SLOT_IMPORT 短 job_name 堆越界读
RDMA 背景 #
2026
RESP3 push frame torn apart when a pubsub message >= 16384 bytes is delivered to the publishing connection (9.0 regression)
防止同步重入解UAF类问题
UAF类-多BLPOP场景
RDB_OPCODE_SLOT_IMPORT short job_name causes server-side heap out-of-bounds read during startup RDB loading
Client Side Caching-服务端反向索引在客户端断开之后没有做及时清理导致无限膨胀的问题
Valkey Over RDMA测试中server UAF崩溃的问题
多线程下的RDMA的崩溃问题(无锁队列IO模型)
valkey Over RDMA技术原理