# Sieve [[Gen Dong]] ら([[Huazhong University of Science and Technology]]・[[Purdue University]])が [[@2026__TOCS__Fail-Slow Hardware Failure Bug Analysis and Detection for Cloud Systems]] で提案した、クラウドシステム向けのフェイルスローハードウェア障害注入テストフレームワーク。コアは Java で約 8,100 SLOC。リポジトリは https://github.com/RabbitDong-on/Sieve 。 ## 設計 - **障害点解析**: Soot 上に構築した静的解析で、同期(`synchronized`・`lock`・`wait`・`await`・`tryacquire`・`join`)およびタイムアウト保護(`nanoTime`・`currentTimeMillis` による経過時間計測スコープ)された I/O 操作だけを候補障害点として抽出する。I/O 操作から逆向きにコールグラフを構築して JRE の無関係メソッドを排除する。 - **計装**: Javassist で候補障害点の直前に fail-slow agent を挿入する。agent は機構(遅延・例外の模擬)、injection controller は方針(注入空間の探索戦略)という機構・方針分離の設計を採る。 - **注入戦略**: 同一基本ブロック内の障害点をまとめる**グルーピング戦略**と、コールスタックを文脈として記録する**文脈依存注入戦略**。遅延長は同期 I/O で既定 5 分、タイムアウト保護 I/O ではタイムアウト値の 2/3。 - **チェッカ**: ログエラーチェッカ、グレイ障害チェッカ(Panorama の簡略版で[[差分可観測性]]を判定)、データ破損チェッカの 3 種。加えて opencode・Codex・Claude Code 等の既存エージェントに専用 skill を与える任意選択の障害検証コンポーネントを持つ。 ## 成果 - [[ZooKeeper]] 3.9.0・[[Apache Kafka]] 3.6.0・[[HDFS]] 3.3.6 に適用し、未知バグ 6 件(ZK-4816, ZK-4817, ZK-4844, ZK-4836, KAFKA-16401, KAFKA-16412)と既知バグ 1 件(HDFS-15869)を検出した。ZK-4836 と KAFKA-16412 は開発者に確認された。 - 研究対象の実障害 48 件のうち 36 件を再現。Random・FATE・Legolas・Chronos との比較で、より少ない障害点でより多くのバグを検出した。 ## 関連 - ソース: [[@2026__TOCS__Fail-Slow Hardware Failure Bug Analysis and Detection for Cloud Systems]] - 著者: [[Gen Dong]] / [[Yu Hua]] / [[Yongle Zhang]] / [[Zhangyu Chen]] / [[Menglei Chen]] - 概念: [[フェイルスローハードウェア]] / [[障害注入]] / [[遅延注入]] / [[グレイ障害]] - 対象システム: [[ZooKeeper]] / [[Apache Kafka]] / [[HDFS]]