# Google Cloud a căzut din cauza unui câmp gol. Trei ore.

Published: 2026-09-19

Un rând de politici cu câteva câmpuri goale lovește un pointer nul, iar Google Cloud se blochează în fiecare regiune simultan – apoi Cloudflare cade odată cu el. 12 iunie 2025, 17:49 UTC: Service Control, binarul care aprobă fiecare cerere API Google Cloud, citește o modificare a politicii de cotă cu „câmpuri goale neintenționate”, lovește o cale de cod livrată cu două săptămâni mai devreme, fără verificare de nul și fără indicator de caracteristică, și intră într-un ciclu de blocare în fiecare regiune – rândul se replicase global în câteva secunde. API-urile externe returnează 503 timp de trei ore; us-central1 durează 2 h 40 min, deoarece sarcinile de repornire iau cu asalt aceeași tabelă Spanner fără un backoff aleatoriu. La trei minute de la întreruperea Google, Workers KV de la Cloudflare – a cărui sursă de adevăr se află pe „un furnizor de cloud terț” – pierde 90 % din cereri, iar Access, WARP, Workers AI, Pages, Stream și Turnstile se blochează odată cu el timp de 2 h 28 min. Pagina de stare a Google publică prima actualizare cu o oră întârziere, deoarece rulează pe Google Cloud.

Canonical: https://thedailydiff.dev/ro/video/2026-09-19-google-cloud-null-pointer/

## Ce acoperă acest videoclip

- Un câmp gol, un pointer nul, fiecare regiune
- Cronologie: 29 mai → 17:45 → ciclu de blocare → buton roșu → 17:52 Cloudflare
- us-central1: efectul de turmă
- Mecanism: verificare în calea cererii, replicare globală, un singur furnizor
- git blame — divizarea

## Capitole

- 0:00 Un câmp gol, un pointer nul, fiecare regiune
- 0:32 Cronologie: 29 mai → 17:45 → ciclu de blocare → buton roșu → 17:52 Cloudflare
- 1:32 us-central1: efectul de turmă
- 1:43 Mecanism: verificare în calea cererii, replicare globală, un singur furnizor
- 2:00 git blame — divizarea
- 2:20 Raza de acțiune
- 2:33 Verdict + linia de luni

## Transcrierea tradusă

Tradus din narațiunea originală în engleză. Audio-ul și subtitrările disponibile sunt controlate de YouTube.

### Un câmp gol, un pointer nul, fiecare regiune

0:00 Un rând de politici cu câmpuri goale lovește un pointer nul, iar Google Cloud se blochează în fiecare regiune simultan — iar Cloudflare cade odată cu el, apoi numește Google „un furnizor terț”. 12 iunie 2025, 17:49 UTC. Raportul Google: Service Control, binarul care aprobă fiecare cerere API, într-un ciclu de blocare timp de trei ore. Cel de la Cloudflare, în aceeași seară: Workers KV, nouăzeci la sută eșecuri, două ore douăzeci și opt.

0:23 Cum s-a întâmplat, de ce un câmp gol a devenit global în câteva secunde, și cine este de vină. Acesta este The Daily Diff, postmortem. 29 mai. Service Control primește o nouă verificare a cotei, livrată regiune cu regiune cu un

### Cronologie: 29 mai → 17:45 → ciclu de blocare → buton roșu → 17:52 Cloudflare

0:35 buton roșu — dar noua cale de cod nu rulează niciodată în timpul implementării; nimic nu o declanșează încă. Fără verificare de nul. Fără indicator de caracteristică. 17:45. O modificare a politicii cu câmpuri goale ajunge în tabelul Spanner. Cota este globală, așa că rândul se replică peste tot în câteva secunde. Fiecare binar Service Control o citește, lovește pointerul nul, se blochează, repornește, o citește din nou. Fiecare apel API: 503.

0:55 Google este rapid: triaj în două minute, cauză principală în zece. Butonul roșu este activ în patruzeci de minute, iar regiunile mici se recuperează primele. Pagina de stare publică prima actualizare într-o oră, deoarece rulează pe Google Cloud. 17:52. Echipa WARP de la Cloudflare vede că noile dispozitive nu reușesc să se înregistreze. Workers KV, stocarea pe care jumătate din Cloudflare o folosește pentru configurare și identitate, locuiește pe un cloud terț. Access eșuează la fiecare autentificare — prin design, eșuează închis.

1:20 Workers AI eșuează la fiecare inferență. 19:11, Gergely Orosz: două cloud-uri independente picate simultan, nu s-a mai văzut niciodată. 19:32, suportul Google îi spune unui utilizator că nu există întreruperi cunoscute — încercați să ștergeți cookie-urile. Toate celelalte se recuperează până la 19:48.

### us-central1: efectul de turmă

1:34 us-central1 nu: sarcinile de repornire iau cu asalt aceeași tabelă Spanner, fără backoff aleatoriu, așa că Google le restricționează manual. Două ore patruzeci. Unu: verificarea politicii se află în calea cererii; când verificarea moare,

### Mecanism: verificare în calea cererii, replicare globală, un singur furnizor

1:46 API-ul moare. Doi: datele despre cotă devin globale fără o etapizare; un rând greșit este un rând global. Trei: Cloudflare știa. Workers KV era în plină migrație către propriul R2, redus la un singur furnizor — postmortem-ul o numește o lacună în acoperire.

### git blame — divizarea

2:00 git blame. Google, cincizeci și cinci la sută: fără verificare de nul, fără indicator de caracteristică, fără backoff — raportul lor spune că un indicator ar fi detectat-o în etapa de staging. Replicare globală, douăzeci: un rând, fiecare regiune, secunde. Cloudflare, douăzeci: jumătate de linie de produse pe stocul unui singur furnizor, și un postmortem care nu menționează niciodată Google. Pagina de stare, cinci, pentru că se bazează pe ceea ce raportează. Raza de acțiune: șaptezeci de produse Google Cloud, zece aplicații Workspace,

### Raza de acțiune

2:23 fiecare regiune. Trei ore. La Cloudflare: Access, WARP, Workers AI, Pages, Stream — două și jumătate. Hacker News, o mie patru sute de puncte; comentariul de top: pagina de stare este verde.

### Verdict + linia de luni

2:33 Verdict, postmortem: SHIP IT. Ambele postmortem-uri aterizează în treizeci de ore, ambele se învinovățesc pe ele însele, iar soluțiile Google sunt concrete: fail open, indicatori dezactivați implicit, backoff exponențial. Linia de luni: cod nou în spatele unui indicator care se livrează oprit, și o verificare de nul acolo unde intră datele. Trimiteți-mi incidentul despre care încă nu aveți voie să vorbiți, în comentarii, sau la the daily diff dot dev. Și asta este The Daily Diff pentru azi.

2:53 Sunt Niko de la Axrisi. Merge responsabil.

## Surse

- [Google Cloud Service Health, Incident Report (Jun 13, 2025) + Mini Incident Report (Jun 12)](https://status.cloud.google.com/incidents/ow5i3PPK96RduMcb1SsW) — status.cloud.google.com
- [Cloudflare, "Cloudflare service outage June 12, 2025" (Jun 12, 2025, 22:00 UTC)](https://blog.cloudflare.com/cloudflare-service-outage-june-12-2025/) — blog.cloudflare.com
- [Cloudflare Status, "Broad Cloudflare service outages" (18:19–21:31 UTC)](https://www.cloudflarestatus.com/incidents/25r9t0vz99rp) — www.cloudflarestatus.com
- [Gergely Orosz, 19:11 UTC, "Their infra is fully independent AFAIK"](https://x.com/GergelyOrosz/status/1933240698716729511) — x.com
- [@Google support, 19:32 UTC, "there aren't any known service disruptions"](https://x.com/Google/status/1933246051512644069) — x.com
- [Thomas Kurian (Google Cloud CEO), Jun 13 01:35 UTC](https://x.com/ThomasOrTK/status/1933337436970709493) — x.com
- [Hacker News, "GCP Outage" (1,468 points)](https://news.ycombinator.com/item?id=44260810) — news.ycombinator.com
- [Hacker News, "Cloudflare was down" (341 points)](https://news.ycombinator.com/item?id=44261064) — news.ycombinator.com
- [Hacker News, "Google Cloud Incident Report – 2025-06-13" (209 points)](https://news.ycombinator.com/item?id=44274563) — news.ycombinator.com
