WAIT
全 shard の master_repl_offset が numreplicas 台以上の replica に ack されるまで(または timeout ミリ秒が経過するまで)ブロックし、shard 横断での ack 済み replica 数の最小値を返す。timeout 0 は無期限待ちだが、上限は 60 s。注意:replica の ACK は fsync による永続化を意味しない。
WAIT numreplicas timeout
計算量
O(S) —— 全 shard に対するバリアであり、返すのは shard 横断での ack 済み replica 数の最小値である。実時間のコストはレプリケーションの往復そのもの。
計算量と互換性は kevy の実装から読み取ったものであり、Redis のドキュメントを写したものではない。実際に異なるものがいくつかある。
Redis との互換性
差異あり
差異あり。全 shard に対するバリアであり、shard 横断の最小値を返す(Redis では待つべき offset が 1 つしかない)。timeout 0 は無期限ではなく 60 秒で頭打ちになる。ACK はフレームが replica の適用パイプラインへ届いたことを意味するだけで、fsync による永続化ではない。