# D3S 開発者が書いた分散不変条件(述語)を、稼働中の分散システムに対して実行時に検査するチェッカーである。述語は逐次的な C++ 関数として書き、実行系が状態タプルの収集、論理時計による大域スナップショットの構築、キー空間分割による並列検査、検査側の障害時の再実行を担う。バイナリ計装(WiDS BOX)で無改造のレガシーシステムに状態露出ライブラリを注入し、述語を稼働中に差し替えられる。違反時は、違反に至った状態変化の列を返す。 PacificA、Paxos 実装(MPS)、Web 検索エンジン、i3-Chord、libtorrent の 5 系統で評価し、対象システムへのオーバーヘッドは最大 8%、多くは 1% 未満だった。前身は同グループの再生型検査 WiDS checker で、D3S は全実行の再生が大規模では高価な点を補うオンライン検査として位置づけられる。 ## 関連 - ソース: [[@2008__NSDI__D3S - Debugging Deployed Distributed Systems]] - 概念: [[分散モニタリング]] / [[障害注入]]