WAIT
阻塞直到每个 shard 的 master_repl_offset 都被至少 numreplicas 个副本确认(或者超过 timeout 毫秒);返回各 shard 中最小的已确认副本数。timeout 0 表示一直等,硬上限 60 s。注意:副本的 ACK 不等于 fsync 落盘。
WAIT numreplicas timeout
复杂度
O(S) —— 一道跨全部 shard 的屏障,返回的是各 shard 里的最小已确认副本数;实际耗时是一次复制往返。
复杂度与兼容性是从 kevy 的实现里读出来的,不是抄 Redis 的文档。有几条确实不一样 —— 它们看起来像笔误,但不是。
与 Redis 的兼容性
有差异
有差异:它是跨全部 shard 的屏障,返回各 shard 中的最小值(Redis 只有一个 offset 要等);timeout 0 会被压到 60s,而不是无限等下去;ACK 只表示帧已进入副本的应用流水线,不表示 fsync 落盘。