设计审查: Periodic/Never 落盘策略下 fsync 错误的上报机制 #20
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 架构审查
问题描述
Periodic和Never策略下,WAL Batch 在 fsync 之前就可以发布publishedSequence并返回成功。这意味着:具体场景
需要明确
Periodic模式下durable high-water mark如何跟踪?是否需要独立的durableSequence?建议
至少需要跟踪
durableSequence(最后一次成功 fsync 的 batch sequence),并在 API 层暴露:GetDurableSequence() uint64— 调用方可以判断哪些确认是真正持久的