Block a user
[Important] MemTable 写入失败(Arena 满)在 WAL 写入后未覆盖
[Critical] Go 内存模型:lock-free read 需要原子发布机制
[Critical] WAL write failure 语义过于简化:write() 失败后 bytes 可能已落盘
3.2 WAL:评估 Value Log 先 fsync 再 WAL fsync 对写吞吐的影响
3.2 WAL:补充 ErrCommitUnknown 的 API 层提交状态确认约束
3.2 WAL:澄清 WAL write failure 与 MemTable pending entry 的时序
3.2 WAL:明确 write-stopped 后 pending/aborted entry 生命周期
🟡 [M4] watcher 后端错误被静默丢弃
修复提交: 7852e92
修复内容:
FileEventenum 新增WatcherError { message: String }变体,用于传递 notify 后端错误- 回调中
Err(_) => return替换为try_send(FileEvent::WatcherError)…
🟡 [M3] read_cache 零长度读取命中空缓存槽
修复方案
根因
缓存命中条件 slot.block_offset == aligned_key && request_end <= slot.block_offset + slot.len 未检查 slot.len > 0,导致初始化状态的空槽(block_offset=0, len=0)被…
3.2 WAL:补充 ErrCommitUnknown 的 API 层提交状态确认约束
3.2 WAL:评估 Value Log 先 fsync 再 WAL fsync 对写吞吐的影响
3.2 WAL:明确 write-stopped 后 pending/aborted entry 生命周期
3.2 WAL:澄清 WAL write failure 与 MemTable pending entry 的时序