Vanmorgen rond 09:11 gingen de alarmbellen in het (virtuele) kantoor af. In onze logs zagen we een fout voorbij komen. Dat gebeurd wel vaker, dus geen reden tot paniek. Totdat we zagen dat de foutmelding leek aan te geven dat een van onze engines onbereikbaar was.
Een F5 op de Frontpage gaf toen de angstaanjagende melding "Tweakers is down"... Nadat we allemaal tot 10 hebben geteld, gingen de dashboards en logs open om te zien wat er aan de hand was. Al snel kwamen we er achter dat een merge request in een van onze engines was gemerged, en we vermoedden dat deze twee zaken met elkaar te maken zouden kunnen hebben.
De betreffende merge request was een aanpassing in een query, waar een nieuwe kolom beschikbaar zou moeten zijn. De migratie die deze kolom in de database moest aanmaken staat in een andere repository, maar die merge request was nog niet gemerged. De databasewijziging was dus nog niet uitgevoerd. Hierdoor faalde de query, wat deze engine deed crashen.
De databasemigratie vond ondertussen plaats in de andere repository, en om 09:17 was de database aangepast - nog voordat we de kans kregen om dit handmatig te doen. Helaas kwam de engine niet vanzelf weer online, waardoor we deze handmatig moesten starten. Om 09:21 is deze handmatig herstart, waarna Tweakers direct weer beschikbaar was.
De betreffende engine was sinds 2016 niet aangepast, en het lijkt dat er nog e.e.a. verbeterd kan worden in de release-procedure om dit soort problemen in te toekomst te voorkomen. In elk geval had de engine niet gedeployed mogen worden voordat de databasewijziging was doorgevoerd. Ook zou de engine weer vanzelf online moeten komen, zonder dat een developer hier nog een handmatige actie voor moet doen.
Een F5 op de Frontpage gaf toen de angstaanjagende melding "Tweakers is down"... Nadat we allemaal tot 10 hebben geteld, gingen de dashboards en logs open om te zien wat er aan de hand was. Al snel kwamen we er achter dat een merge request in een van onze engines was gemerged, en we vermoedden dat deze twee zaken met elkaar te maken zouden kunnen hebben.
De betreffende merge request was een aanpassing in een query, waar een nieuwe kolom beschikbaar zou moeten zijn. De migratie die deze kolom in de database moest aanmaken staat in een andere repository, maar die merge request was nog niet gemerged. De databasewijziging was dus nog niet uitgevoerd. Hierdoor faalde de query, wat deze engine deed crashen.
De databasemigratie vond ondertussen plaats in de andere repository, en om 09:17 was de database aangepast - nog voordat we de kans kregen om dit handmatig te doen. Helaas kwam de engine niet vanzelf weer online, waardoor we deze handmatig moesten starten. Om 09:21 is deze handmatig herstart, waarna Tweakers direct weer beschikbaar was.
De betreffende engine was sinds 2016 niet aangepast, en het lijkt dat er nog e.e.a. verbeterd kan worden in de release-procedure om dit soort problemen in te toekomst te voorkomen. In elk geval had de engine niet gedeployed mogen worden voordat de databasewijziging was doorgevoerd. Ook zou de engine weer vanzelf online moeten komen, zonder dat een developer hier nog een handmatige actie voor moet doen.
Einstein: Mijn vrouw begrijpt me niet