RSS Der tägliche WTF
Folgen
Göttliche Komödie
Der bereitgestellte Text beschreibt eine problematische gespeicherte Prozedur in MariaDB, die von einem Entwickler namens Salagir dokumentiert wurde.
Dieses Verfahren, das für das Abrufen von Übersetzungen entwickelt wurde, wird aufgrund zahlreicher Probleme als warnendes Beispiel dargestellt.
Der Code wird als "toter Code" markiert, aber aufgrund seines historischen Wertes und der Lektionen, die er bietet, beibehalten.
Salagirs Kommentar hebt mehrere Schwierigkeiten hervor, angefangen bei Syntax-Inkompatibilitäten zwischen Datenbankumgebungen.
Eine wesentliche Hürde war eine globale Servereinstellung, die für die Ausführung der Prozedur erforderlich war und leicht übersehen wurde.
In dem Kommentar wird auch detailliert beschrieben, wie eine falsche Indexverwendung aufgrund von Datentypkonflikten zu vollständigen Tabellenscans führte.
Das Debuggen dieses Verfahrens war äußerst schwierig, so dass die Entwickler auf die Überwachung von Datenbankprozesslisten zurückgreifen mussten.
Das schwerwiegendste Problem war die Prozedur, die nicht löschbare Datenbanksperren verursachte, die eine vollständige Neuerstellung der Datenbank erforderlich machten.
Letztendlich wurde das Verfahren durch eine einfachere Unterabfrage ersetzt, wodurch alle aufgetretenen Probleme behoben wurden.
Der Autor schlägt vor, dass eine solche Funktion eine unnötige Komplikation für eine Aufgabe darstellte, die von Standard-Datenbankoperationen leicht zu bewältigen war.