设计审查: Get API 必须返回 found 状态以支持空值确认约束 #21
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
来源: docs/design.md §3.2 WAL Oracle 架构审查
问题描述
设计中多处要求 API 层
Get必须区分 "key exists with empty value" 与 "key not found":Put + Inline允许valLen = 0,表示 key 存在且 value 为空 bytes"Put(key, emptyValue)必须依赖 API 区分 key exists with empty value 与 key not found"Get不能只返回[]byte;必须返回found或等价状态"但在 §1.5 功能范围和 §3.4 读路径中没有定义
Get的具体 API 签名。需要明确
Get的 API 签名。推荐方案:或者等价的:
影响范围