Google Cloudが空白フィールドでクラッシュ。3時間。
空白のフィールドを含むポリシ行がヌルポインタにヒットし、Google Cloudはすべてのリージョンで一度にクラッシュしました。
空白のフィールドを含むポリシ行がヌルポインタにヒットし、Google Cloudはすべてのリージョンで一度にクラッシュしました。その後、Cloudflareもダウンしました。2025年6月12日、17:49 UTC: すべてのGoogle Cloud APIリクエストを承認するバイナリであるService Controlが、「意図しない空白フィールド」を含むクォータポリシの変更を読み込み、2週間前に出荷され、ヌルチェックも機能フラグもなかったコードパスにヒットし、すべてのリージョンでクラッシュループに入りました。この行は数秒以内にグローバルに複製されていました。外部APIは3時間503を返しました。us-central1は、再起動するタスクがランダム化されたバックオフなしで同じSpannerテーブルに殺到したため、2時間40分かかりました。Googleの障害発生から3分後、CloudflareのWorkers KV(その真実の情報源は「サードパーティのクラウドプロバイダ」にある)はリクエストの90%を失い、Access、WARP、Workers AI、Pages、Stream、Turnstileも2時間28分にわたってダウンしました。Googleのステータスページは、Google Cloud上で実行されているため、1時間遅れて最初の更新を投稿しました。
この動画の要点
- 空白フィールド、ヌルポインタ、すべてのリージョン
- タイムライン:5月29日 → 17:45 → クラッシュループ → 赤いボタン → 17:52 Cloudflare
- us-central1: 群集効果
- メカニズム:リクエストパスでのチェック、グローバルレプリケーション、単一ベンダー
- git blame — 分割
翻訳されたトランスクリプト
オリジナルの英語ナレーションから翻訳されています。利用可能なオーディオとキャプションはYouTubeによって管理されています。
空白フィールド、ヌルポインタ、すべてのリージョン
0:00 空白のフィールドを持つポリシー行がヌルポインタにヒットし、Google Cloudがクラッシュ すべてのリージョンで一度に — そしてCloudflareもそれに伴いダウン そしてGoogleを「サードパーティプロバイダ」と呼ぶ。 2025年6月12日、17:49 UTC。 Googleのレポート:Service Control、すべてのAPIリクエストを承認するバイナリが 3時間クラッシュループに陥る。 Cloudflareの同じ夜:Workers KV、90パーセントが失敗し、 2時間28分。
0:23 どのようにして起こったのか、なぜ1つの空白フィールドが数秒でグローバルになったのか、 そして誰が非難されるのか。 これはThe Daily Diff、事後分析です。 5月29日。Service Controlに新しいクォータチェックが追加され、
タイムライン:5月29日 → 17:45 → クラッシュループ → 赤いボタン → 17:52 Cloudflare
0:35 赤いボタンとともにリージョンごとに展開されましたが、新しいコードパスはロールアウト中に実行されず、 まだ何もトリガーされていません。ヌルチェックはありません。 機能フラグもありません。 17:45。空白のフィールドを含むポリシ変更がSpannerテーブルに書き込まれる。 クォータはグローバルなので、行は数秒以内にどこにでも複製される。 すべてのService Controlバイナリがそれを読み込み、ヌルポインタにヒットし、 クラッシュし、再起動し、再びそれを読み込む。 すべてのAPI呼び出し:503。
0:55 Googleは速い:2分でトリアージ、10分で根本原因。 赤いボタンは40分で無効化され、小さなリージョンから復旧が始まる。 ステータスページは1時間遅れて最初の更新を投稿した、 なぜならGoogle Cloud上で実行されているからだ。 17:52。CloudflareのWARPチームは、新しいデバイスが登録に失敗するのを目にする。 Cloudflareの半分が設定とIDに使用するストア、Workers KVは、 サードパーティのクラウド上に存在する。 Accessはすべてのログインに失敗する — 設計上、クローズ状態で失敗する。
1:20 Workers AIはすべての推論に失敗する。 19:11、Gergely Orosz:2つの独立したクラウドが同時にダウン、 今まで見たことがない。 19:32、Googleサポートはユーザーに既知の障害はないと告げ、クッキーをクリアするように指示する。 他はすべて19:48までに復旧する。
us-central1: 群集効果
1:34 us-central1は復旧しない:再起動するタスクが同じSpannerテーブルに殺到し、 ランダム化されたバックオフがないため、Googleは手動でそれらをスロットルする。 2時間40分。 一つ:ポリシーチェックはリクエストパス内にあり、チェックが死ぬと、
メカニズム:リクエストパスでのチェック、グローバルレプリケーション、単一ベンダー
1:46 APIが死ぬ。 二つ:クォータデータはステージングなしでグローバルに展開され、不正な行はグローバルな行となる。 三つ:Cloudflareは知っていた。 Workers KVは独自のR2への移行中であり、1つのプロバイダに依存していた — 事後分析ではそれをカバレッジのギャップと呼んでいる。
git blame — 分割
2:00 git blame。Google、55パーセント:ヌルチェックなし、機能フラグなし、 バックオフなし — 彼らの報告書によると、フラグがあればステージングで捕捉できたはずだ。 グローバルレプリケーション、20:1行、すべてのリージョン、 数秒。Cloudflare、20:製品ラインの半分が1つのベンダーのストアに依存し、 そしてGoogleという言葉を一度も使わない事後分析。 ステータスページ、5:報告対象のサービス上で動作しているため。 爆発範囲:70のGoogle Cloud製品、10のWorkspaceアプリ、
爆発範囲
2:23 すべてのリージョン。3時間。 Cloudflareでは:Access、WARP、Workers AI、Pages、Stream — 2時間半。 Hacker News、1400ポイント;トップコメント:ステータスページは緑。
評決 + 月曜日のライン
2:33 評決、事後分析:SHIP IT。 両方の事後分析は30時間以内に公開され、両方とも自らを責め、 Googleの修正は具体的です:オープンに失敗、デフォルトでフラグオフ、 指数バックオフ。月曜日のライン:デフォルトでオフになるフラグの背後にある新しいコード、 そしてデータが入ってくる場所でのヌルチェック。 まだ話すことが許されていないインシデントを教えてください。 コメントで、または the daily diff dot dev で。 そしてそれが今日のdiffです。
2:53 AxrisiのNikoです。 責任を持ってマージしてください。
情報源
- Google Cloud Service Health, Incident Report (Jun 13, 2025) + Mini Incident Report (Jun 12)status.cloud.google.com
- Cloudflare, "Cloudflare service outage June 12, 2025" (Jun 12, 2025, 22:00 UTC)blog.cloudflare.com
- Cloudflare Status, "Broad Cloudflare service outages" (18:19–21:31 UTC)www.cloudflarestatus.com
- Gergely Orosz, 19:11 UTC, "Their infra is fully independent AFAIK"x.com
- @Google support, 19:32 UTC, "there aren't any known service disruptions"x.com
- Thomas Kurian (Google Cloud CEO), Jun 13 01:35 UTCx.com
- Hacker News, "GCP Outage" (1,468 points)news.ycombinator.com
- Hacker News, "Cloudflare was down" (341 points)news.ycombinator.com
- Hacker News, "Google Cloud Incident Report – 2025-06-13" (209 points)news.ycombinator.com



