Menü

"I'm a teapot": Kuriose Panne bei Node.js-Paketverwaltung npm

Für einige Stunden erhielten Nutzer der npm-Registry die HTTP-Fehler 418 "I'm a teapot". Der Grund war aber kein Teekessel, sondern eine kürzlich umgezogene Registry.

Von
vorlesen Drucken Kommentare lesen 9 Beiträge
Teekanne, Teetasse auf Tisch

(Bild: Daniel AJ Sokolov)

Einige Nutzer des Paketverwalters npm haben am Montag beim Versuch, auf das zentrale Repository zuzugreifen, eine kuriose Fehlermeldung bekommen: Statt Pakete auszuliefern, antworteten die npm-Server mit dem HTTP-Fehler 418 "I'm a teapot".

"This is not a joke", stellte der Fehlerbericht klar, und tatsächlich war vielen betroffenen Nutzern nicht zum Scherzen zumute. Das Problem tauchte bei neueren npm-Clients auf, die über einen Proxy aufs Internet zugriffen.

Umleitungsfehler

Nach ein paar Stunden war die Teekanne wieder verschwunden. Der Fehler lag nicht bei den npm-Clients, sondern in der Registry, die vor kurzem zum Cloud-Dienstleister Cloudflare umgezogen ist. Dadurch gingen aber bei Yarn, einem von Facebook entwickelten alternativen Client für die npm-Registry, die Lichter aus: Yarn leitete nämlich registry.yarnpkg.com via Cloudflare auf registry.npmjs.org um, was nun nicht mehr funktionierte.

Als Lösung prüft die npm-Registry seither den CNAME, also den kanonischen Domain-Namen. Dummerweise übersahen die npm-Entwickler dabei, dass auch eine Portnummer an den Hostnamen angehängt sein kann – insbesondere beim Zugriff über einen Proxy.

"Hyper Text Coffee Pot Control Protocol"

Bei der Teapot-Fehlermeldung handelt es sich um einen 20 Jahre alten Nerd-Witz, der auch anderswo zu finden ist – der aber nicht überall gut ankam. Er geht zurück auf das "Hyper Text Coffee Pot Control Protocol", einen Aprilscherz des IETF, in dem ein Gerät unter anderem mit dem Fehler 418 "I'm a teapot" die Zubereitung von Kaffee verweigern kann.

Lange vor der aktuellen Panne debattierten die npm-Macher darüber, ob solche Gags angemessen sind, entschieden damals aber, sie beizubehalten. npm ist mit 700.000 Paketen nach eigenen Angaben das größte Repository von frei verfügbarem Code. (axk)

Anzeige
Anzeige