Post Mortem 23 juni 2022 Incident
Op donderdag 23 juni was er een grote storing voor cal.com. De reden was enige verwarring rond een script om de productie DB te klonen, het te anonimiseren en het te downloaden voor ontwikkelingsgebruik.
Op deze dag proberen we een nieuwe service genaamd snaplet.dev te testen die ons in staat stelt om onze productiedatabase te downloaden, alle privégegevens te anonimiseren en lokaal te gebruiken, zodat we een productie-achtige database kunnen hebben voor het vinden van zeldzame datagevallen en deze op te lossen.
De set-up is vrij eenvoudig, je maakt verbinding met je productie DB, downloadt deze, anonimiseer het en herstelt het naar je lokale DB.
Het probleem hier is dat alles lokaal gebeurde in dit geval. Dus ik heb de gegevens gedownload, geanonimiseerd, en toen het tijd was om te herstellen, had ik de DATABASE_URL
naar de mijne lokale moeten bijwerken, maar dat ben ik vergeten te doen.
Het resultaat hiervan was dat ik productied gegevens heb gedownload, deze geanonimiseerd en weer naar de productie heb geüpload in plaats van naar mijn lokale database. Wat resulteerde in gemockte gegevens in de productie DB.
Zoals veel van jullie misschien hebben ervaren, leidde dit tot onverwacht gedrag zoals ontbrekende boekingen, onjuiste e-mails en gebruikersnamen.
Aangezien mijn kennis om toegang te krijgen tot de productie-back-ups beperkt was, zat ik met mijn handen gebonden totdat Bailey Pumfleet me de kennis gaf om daadwerkelijk toegang te krijgen tot de back-ups en ik in staat was om een eerdere werkende versie te herstellen. Hoewel dit bijna 7 uur van storing kostte voordat het correct was opgelost.
Als net gepromoveerde Lead voor het engineeringteam heb ik geen excuses voor dit. Ik had het beter moeten weten en ik kan ervoor zorgen dat dit niet weer zal gebeuren.
Een grote dank aan alle gebruikers, klanten, teamgenoten en leiders voor het geduld en het vertrouwen dat in mij is gesteld, en als ik de kans krijg, zal ik ervoor zorgen dat deze ervaring wordt omgezet in waardevolle lessen en ons veerkrachtiger maakt in de toekomst.
We hebben de operaties volledig hersteld en er zijn nieuwe controles ingevoerd om dit in de toekomst te voorkomen.
Wederom dankbaar zoals altijd,
Zomars