跳到正文
Hacker News· speckx·· 2 小时前AI 评分40

为什么打乱调度顺序能发现这么多 bug?Rewind VM 的确定性虚拟机实践

Why does shuffling the schedule find so many bugs?

AI 导读

Rewind VM 是一款确定性虚拟机,通过在同一份代码上运行多种不同的调度顺序来发现 bug,仅靠打乱调度就已找出大量问题。作者以 AWS RDS 工作流中 worker 心跳超时被重新分配、旧 worker 苏醒后继续执行导致混乱为例,说明 bug 并不罕见,罕见的是触发它的调度顺序。文中用两线程 counter++ 的 20 种交错顺序说明,其中 18 种会丢失更新。

来源:Hacker News · fzakaria.com