{"UUID":"91fb1613-e01a-4a07-ba82-928839bc9272","URL":"http://code.google.com/p/chromium/issues/detail?id=165171","ArchiveURL":"https://web.archive.org/web/20151008061104if_/http://code.google.com/p/chromium/issues/detail?id=165171","Title":"Chrome SyncDataType parsing crash","StartTime":"2012-12-10T00:00:00Z","EndTime":"2012-12-11T02:05:07Z","Categories":["config-change"],"Keywords":["chrome","sync","crash","quota","load balancing","client","server","parsing","browser","protobuf","2012"],"Company":"Google","Product":"Chrome Sync","SourcePublishedAt":"0001-01-01T00:00:00Z","SourceFetchedAt":"2026-05-04T18:16:45.557069Z","Summary":"A bad config caused a quota service to fail, which caused multiple services to fail (including gmail).","Description":"On December 10, 2012, Google Chrome users experienced widespread browser crashes. Initially, these crashes were mistakenly linked to a Gmail outage, but investigations quickly identified the Chrome Sync service as the trigger.\n\nThe incident stemmed from a faulty load balancing configuration change within a core Google infrastructure component. This change severely impacted a quota service, which Chrome Sync servers relied upon to manage per-datatype sync traffic.\n\nIn response to the quota service's failure, Chrome Sync servers conservatively instructed clients to throttle \"all\" data types. This included data types that older Chrome client versions did not yet understand or support. The client-side logic, specifically a function converting a protobuf field number to an enum, returned an `UNSPECIFIED` value, causing an `out_of_range` error when stored in a bitset, leading to the browser crash.\n\nCustomer impact was significant, with users experiencing unexpected browser terminations.\n\nRemediation involved a swift server-side fix to prevent Sync servers from throttling unknown data types, which immediately stopped the crashes. Additionally, a client-side fix (r172232) was developed and merged into Chrome on December 11, 2012, to enhance client robustness by gracefully handling invalid specifics field numbers."}