Millioner af udviklere verden over blev ramt, da GitHub mandag blev ramt af et omfattende nedbrud, som slog centrale dele af platformen ud i næsten otte timer.
Ifølge GitHubs egen statusside begyndte problemerne mandag eftermiddag, da selskabet meldte om fejl og forringet ydeevne på tværs af en række tjenester.
I løbet af få minutter blev listen over berørte systemer længere og længere.
Først blev API'et ramt, derefter GitHub Actions, Webhooks, Issues og Pull Requests.
Senere blev også virksomheders login-løsninger og AI-assistenten Copilot påvirket.
På sit højeste oplevede GitHub en fejlrate på omkring 20 procent på webtrafik og API-kald. Samtidig fejlede omkring halvdelen af alle downloads af repositories og rå kildefiler. [
Det betød i praksis, at udviklere risikerede fejl ved adgang til kode, oprettelse af pull requests, håndtering af issues og automatiske build- og deploy-processer via GitHub Actions.
GitHub, der blev overtaget af Microsoft i 2018, har i mange år været det største samlingssted for hosting af de projekter, der bygger på versions-styringssystemet Git, som anvendes til at holde styr på ændringer i filer - ikke mindst kildekode.
Git - der for 21 år siden blev opfundet af Linux-guru Linus Torvalds til at holde styr på udviklingen af Linux - er i dag den nok mest udbredte standard i verden for alle software-projekter med mange udviklere og løbende ændringer.
Fejlen bredte sig gennem GitHubs infrastruktur
Omkring halvanden time efter de første fejl så dagens lys, meldte GitHub også om problemer med de centrale loginløsninger som Team Sync og Saml. Dermed blev virksomheder, som bruger GitHub som en central del af deres setup, også ramt.
Kort efter blev Copilot markeret som utilgængelig eller stærkt forringet.
Det gjorde hændelsen mere omfattende end mange tidligere GitHub-nedbrud, fordi både kildekodeplatformen, udviklingsværktøjerne, automatiseringen og AI-assistenten blev påvirket samtidig.
GitHub: Årsagen er fundet
Ifølge GitHubs officielle hændelsesrapport skyldtes udfaldet en fejl i selskabets interne systemer til lagring og håndtering af metadata.
Problemet førte til udbredte fejl på tværs af platformen og belastede de bagvedliggende systemer, hvilket igen påvirkede en lang række tjenester.
Som en del af genopretningen begyndte GitHub at flytte en del af den fejlramte trafik over på sit store datacenter i Virginia, der ikke var ramt Dermed kunne platformen fortsætte driften, mens selskabets udviklere forsøgte at løse problemerne.
GitHub forklarer, at en forsinkelse på et enkelt internt endpoint udløste en hidtil ukendt fejl i VS Code, hvilket førte til et loop, hvor klienterne blev med at gentage deres forespørgsler, så trafikken pludselig blev mangedoblet
Det fik ifølge GitHub belastningen til at stige til omkring 10 gange normalniveauet, hvilket altså fik systemerne til at crashe.
Selskabet er nu i gang med at indføre forskellige tiltag, der skal forhindre, at noget tilsvarende kan ske igen.
I sin incident-rapport - som du finder her - skriver GitHub, at man blandt andet vil gennemgå de opsatte regler for såkaldte 'retry limits' på tværs af klienterne, ligesom monitoreringen af load balancer skal forbedres.