注目★★★★★Cloudflare
hyperライブラリの競合バグ、Cloudflareが6週間かけて4行で修正
30秒で把握
- 1CloudflareがhyperライブラリのHTTPソケット競合バグを6週間で特定・4行修正
- 2大画像のみ断続的にレスポンスが途切れHTTP 200を返す再現困難な挙動が原因
- 3hyperを使うRustサービスは大レスポンス時のバッファ挙動とバージョン確認を推奨
要約
CloudflareはImagesバインディングの再設計時に、RustのオープンソースHTTPライブラリhyperの複数メジャーバージョンに存在する競合条件バグを発見した。バグは大きな画像のみ断続的に発生し、レスポンスが2MBのところ数百KBで途切れるにもかかわらずHTTPステータスは200を返すという挙動だった。原因はhyperが内部バッファのフラッシュ完了前にソケットをshutdownする競合条件で、6週間の調査の末4行のコード修正で解決した。
あなたへの影響
Rustを使ったWorkers/サービス基盤でhyperを採用しているチームは、大きなレスポンスボディを扱う場合に同種の断続的切断が発生していないかログとバッファ挙動を確認する価値がある。
推奨:修正済みバージョンへのアップグレードも合わせて確認を。