DBAtlas · Atlas für Datenbankbetrieb

1615: Prepared statement needs to be re-prepared

MySQL

Was bedeutet das?

Die Ausführung eines serverseitigen Prepared Statements wurde abgelehnt, weil es ungültig wurde, nachdem sich die Metadaten geändert haben, von denen es abhängt (Tabellen-/View-Definition). Die Anweisung muss neu vorbereitet werden.

Ursache

DDL (ALTER TABLE) auf der zugrunde liegenden Tabelle nach dem Vorbereiten der Anweisung, Neuanlage der Tabelle, ein volllaufender Metadaten-Cache, der den Eintrag verdrängt, oder zu kleine Limits für table_definition_cache/table_open_cache. Häufig auf Systemen mit viel DDL und in manchen ORM-/Pool-Szenarien.

Lösung

Die meisten Client-Bibliotheken fangen das ab und bereiten die Anweisung automatisch neu vor; fange diesen Fehler in der Anwendung ab und wiederhole Prepare + Execute. Tritt er häufig auf, erhöhe table_definition_cache und table_open_cache. Vermeide unnötige DDL während des Anwendungsverkehrs.

In DBAtlas öffnen →

Weitere Einträge zu dieser Datenbank