+− THE DAILY DIFFdev & AI news
SHIP IT

Το Google Cloud κατέρρευσε σε ένα κενό πεδίο. Τρεις ώρες.

Μια γραμμή πολιτικής με μερικά κενά πεδία χτυπά έναν δείκτη null και το Google Cloud καταρρέει σε κάθε περιοχή ταυτόχρονα — τότε το Cloudflare πέφτει μαζί του.

Μια γραμμή πολιτικής με μερικά κενά πεδία χτυπά έναν δείκτη null και το Google Cloud καταρρέει σε κάθε περιοχή ταυτόχρονα — τότε το Cloudflare πέφτει μαζί του. 12 Ιουνίου 2025, 17:49 UTC: Το Service Control, το δυαδικό που εγκρίνει κάθε αίτημα API του Google Cloud, διαβάζει μια αλλαγή πολιτικής ορίου με «αθέλητα κενά πεδία», βρίσκει μια διαδρομή κώδικα που κυκλοφόρησε δύο εβδομάδες νωρίτερα χωρίς έλεγχο null και χωρίς σημαία λειτουργίας, και εισέρχεται σε βρόχο κατάρρευσης σε κάθε περιοχή — η γραμμή είχε αναπαραχθεί παγκοσμίως μέσα σε δευτερόλεπτα. Τα εξωτερικά API επιστρέφουν 503 για τρεις ώρες. Το us-central1 χρειάζεται 2 ώρες 40 λεπτά επειδή οι επανεκκινούμενες εργασίες κατακλύζουν τον ίδιο πίνακα Spanner χωρίς τυχαιοποιημένο backoff. Τρία λεπτά μετά την διακοπή λειτουργίας της Google, το Workers KV του Cloudflare — του οποίου η πηγή αλήθειας βρίσκεται σε «πάροχο cloud τρίτου μέρους» — χάνει το 90% των αιτημάτων, και τα Access, WARP, Workers AI, Pages, Stream και Turnstile καταρρέουν μαζί του για 2 ώρες 28 λεπτά. Η σελίδα κατάστασης της Google δημοσιεύει την πρώτη της ενημέρωση μια ώρα αργότερα, επειδή λειτουργεί στο Google Cloud.

Διαβάστε την γραπτή έκδοση (Αγγλικά) ↗

Τι καλύπτει αυτό το βίντεο

  • Ένα κενό πεδίο, ένας δείκτης null, κάθε περιοχή
  • Χρονοδιάγραμμα: 29 Μαΐου → 17:45 → βρόχος κατάρρευσης → κόκκινο κουμπί → 17:52 Cloudflare
  • us-central1: το φαινόμενο του κοπαδιού
  • Μηχανισμός: έλεγχος στη διαδρομή αιτήματος, παγκόσμια αναπαραγωγή, ένας πωλητής
  • git blame — η διάσπαση

Μεταφρασμένη μεταγραφή

Μεταφράστηκε από την πρωτότυπη αγγλική αφήγηση. Ο διαθέσιμος ήχος και οι υπότιτλοι ελέγχονται από το YouTube.

Ένα κενό πεδίο, ένας δείκτης null, κάθε περιοχή

0:00 Μια γραμμή πολιτικής με κενά πεδία χτυπά έναν δείκτη null και το Google Cloud καταρρέει σε κάθε περιοχή ταυτόχρονα — και το Cloudflare πέφτει μαζί του, και μετά αποκαλεί την Google «πάροχο τρίτου μέρους». 12 Ιουνίου 2025, 17:49 UTC. Η αναφορά της Google: Το Service Control, το δυαδικό που εγκρίνει κάθε αίτημα API, σε βρόχο κατάρρευσης για τρεις ώρες. Του Cloudflare, το ίδιο βράδυ: Workers KV, ενενήντα τοις εκατό αποτυγχάνει, δύο ώρες είκοσι οκτώ.

0:23 Πώς συνέβη, γιατί ένα κενό πεδίο έγινε παγκόσμιο σε δευτερόλεπτα, και ποιος φταίει. Αυτό είναι το The Daily Diff, postmortem. 29 Μαΐου. Το Service Control λαμβάνει έναν νέο έλεγχο ορίου, που κυκλοφορεί ανά περιοχή με ένα

Χρονοδιάγραμμα: 29 Μαΐου → 17:45 → βρόχος κατάρρευσης → κόκκινο κουμπί → 17:52 Cloudflare

0:35 κόκκινο κουμπί — αλλά η νέα διαδρομή κώδικα δεν τρέχει ποτέ κατά την κυκλοφορία. τίποτα δεν το ενεργοποιεί ακόμα. Χωρίς έλεγχο null. Χωρίς σημαία λειτουργίας. 17:45. Μια αλλαγή πολιτικής με κενά πεδία προσγειώνεται στον πίνακα Spanner. Το όριο είναι παγκόσμιο, οπότε η γραμμή αναπαράγεται παντού μέσα σε δευτερόλεπτα. Κάθε δυαδικό του Service Control το διαβάζει, χτυπά τον δείκτη null, καταρρέει, επανεκκινείται, το διαβάζει ξανά. Κάθε κλήση API: 503.

0:55 Η Google είναι γρήγορη: διαλογή σε δύο λεπτά, βασική αιτία σε δέκα. Το κόκκινο κουμπί βγαίνει σε σαράντα, και οι μικρές περιοχές ανακάμπτουν πρώτες. Η σελίδα κατάστασης δημοσιεύει την πρώτη της ενημέρωση μετά από μία ώρα, επειδή λειτουργεί στο Google Cloud. 17:52. Η ομάδα WARP του Cloudflare βλέπει νέες συσκευές να αποτυγχάνουν να εγγραφούν. Το Workers KV, το κατάστημα που χρησιμοποιεί το μισό Cloudflare για διαμόρφωση και ταυτότητα, βρίσκεται σε ένα cloud τρίτου μέρους. Το Access αποτυγχάνει σε κάθε σύνδεση — από σχεδιασμό, αποτυγχάνει κλειστό.

1:20 Το Workers AI αποτυγχάνει σε κάθε συμπερασμό. 19:11, Gergely Orosz: δύο ανεξάρτητα clouds κάτω ταυτόχρονα, ποτέ πριν ξαναγίνει. 19:32, η υποστήριξη της Google λέει σε έναν χρήστη ότι δεν υπάρχουν γνωστές διακοπές — δοκιμάστε να καθαρίσετε τα cookies σας. Όλα τα άλλα ανακάμπτουν έως τις 19:48.

us-central1: το φαινόμενο του κοπαδιού

1:34 Το us-central1 δεν το κάνει: οι επανεκκινούμενες εργασίες κατακλύζουν τον ίδιο πίνακα Spanner, χωρίς τυχαιοποιημένο backoff, οπότε η Google τις περιορίζει χειροκίνητα. Δύο ώρες σαράντα. Ένα: ο έλεγχος πολιτικής βρίσκεται μέσα στη διαδρομή αιτήματος. όταν ο έλεγχος πεθαίνει,

Μηχανισμός: έλεγχος στη διαδρομή αιτήματος, παγκόσμια αναπαραγωγή, ένας πωλητής

1:46 το API πεθαίνει. Δύο: τα δεδομένα ορίου γίνονται παγκόσμια χωρίς στάδιο. μια κακή γραμμή είναι μια παγκόσμια γραμμή. Τρία: Το Cloudflare το γνώριζε. Το Workers KV ήταν σε μέση μετανάστευση προς το δικό του R2, σε έναν πάροχο — το postmortem το αποκαλεί κενό στην κάλυψη.

git blame — η διάσπαση

2:00 git blame. Google, πενήντα πέντε τοις εκατό: χωρίς έλεγχο null, χωρίς σημαία λειτουργίας, χωρίς backoff — η αναφορά τους λέει ότι μια σημαία θα το είχε πιάσει στο στάδιο. Παγκόσμια αναπαραγωγή, είκοσι: μια γραμμή, κάθε περιοχή, δευτερόλεπτα. Cloudflare, είκοσι: μισή σειρά προϊόντων σε ένα κατάστημα προμηθευτή, και ένα postmortem που δεν λέει ποτέ Google. Η σελίδα κατάστασης, πέντε, για το ότι ζει από αυτά που αναφέρει. Ακτίνα έκρηξης: εβδομήντα προϊόντα Google Cloud, δέκα εφαρμογές Workspace,

Ακτίνα έκρηξης

2:23 κάθε περιοχή. Τρεις ώρες. Στο Cloudflare: Access, WARP, Workers AI, Pages, Stream — δυόμισι. Hacker News, χίλια τετρακόσια σημεία. κορυφαίο σχόλιο: η σελίδα κατάστασης είναι πράσινη.

Ετυμηγορία + η γραμμή της Δευτέρας

2:33 Ετυμηγορία, postmortem: SHIP IT. Και τα δύο postmortems προσγειώνονται εντός τριάντα ωρών, και τα δύο κατηγορούν τον εαυτό τους, και οι διορθώσεις της Google είναι συγκεκριμένες: αποτυχία ανοιχτή, σημαίες απενεργοποιημένες από προεπιλογή, εκθετικό backoff. Η γραμμή της Δευτέρας: νέος κώδικας πίσω από μια σημαία που αποστέλλεται απενεργοποιημένη, και ένας έλεγχος null όπου εισέρχονται τα δεδομένα. Στείλτε μου το περιστατικό για το οποίο δεν επιτρέπεται ακόμα να μιλήσετε, στα σχόλια, ή στο the daily diff dot dev. Και αυτή είναι η διαφορά για σήμερα.

2:53 Είμαι ο Νίκος από την Axrisi. Συγχώνευση με υπευθυνότητα.

Πηγές

  1. Google Cloud Service Health, Incident Report (Jun 13, 2025) + Mini Incident Report (Jun 12)status.cloud.google.com
  2. Cloudflare, "Cloudflare service outage June 12, 2025" (Jun 12, 2025, 22:00 UTC)blog.cloudflare.com
  3. Cloudflare Status, "Broad Cloudflare service outages" (18:19–21:31 UTC)www.cloudflarestatus.com
  4. Gergely Orosz, 19:11 UTC, "Their infra is fully independent AFAIK"x.com
  5. @Google support, 19:32 UTC, "there aren't any known service disruptions"x.com
  6. Thomas Kurian (Google Cloud CEO), Jun 13 01:35 UTCx.com
  7. Hacker News, "GCP Outage" (1,468 points)news.ycombinator.com
  8. Hacker News, "Cloudflare was down" (341 points)news.ycombinator.com
  9. Hacker News, "Google Cloud Incident Report – 2025-06-13" (209 points)news.ycombinator.com

Σχετικά βίντεο

postmortem · el · 25 Σεπ 2026

Ένα σφάλμα ενός χιλιοστού του δευτερολέπτου σταμάτησε την εναέρια κυκλοφορία του Ηνωμένου Βασιλείου. Έξι ώρες.

Στις 10:00 το πρωί της Τρίτης, 8 Σεπτεμβρίου, μια αίτηση ρουτίνας για κωδικό squawk εντός του Εθνικού Συστήματος Εναέριου Χώρου (NAS) της NATS διακόπτεται από ένα μήνυμα υψηλότερης προτεραιότητας ενώ

3:06 ↗
postmortem · el · 22 Σεπ 2026

Μια επανεκκίνηση έστειλε την Telstra στο 2006. Εννέα εκατομμύρια τηλέφωνα.

Ένας μηχανικός στη Μελβούρνη ενεργοποιεί ξανά ένα χρονομετρικό σασί στις 2:50 π.μ. και μέχρι το πρωινό το μεγαλύτερο δίκτυο κινητής τηλεφωνίας της Αυστραλίας συμφωνεί ότι είναι Νοέμβριος 2006. 8 Ιουλί

3:15 ↗