Documented incidentIncident 2025-06-12Google CloudEngineering postmortem

Policy change with blank fields crashes Google Cloud's Service Control in a global loop (2025)

A policy change containing blank fields was inserted into the quota policy system; when Service Control read it, the code path hit a null pointer and the binaries went into a crash loop.

What happened

  • The faulty code lacked error handling and was not protected by a feature flag, so unvetted behaviour reached production globally.Google Cloud incident report: global outage of June 12, 2025
  • More than 40 Google Cloud products returned 503 errors between 10:51 and 18:18 PDT.Google Cloud incident report: global outage of June 12, 2025

The failure pattern

Watch the pattern: Global change without a staged rollout

Safeguards that address it

CollectSEA's engineering analysis of what would have prevented or contained this failure.

  • Guard risky code paths with feature flagsShip new behaviour dark, enable it gradually and keep a fast way to turn it off.
  • Validate policy data before global replicationReject blank or malformed policy fields, handle errors without crashing, and replicate changes region by region.

Related standards

CollectSEA's mapping through this incident's failure pattern; not an official determination by the standards bodies.

Building something similar?

Describe your design and see every precedent that applies, with safeguards you can hand to your coding agent.

Analyze your design