Interne Fehler
Interne Fehler signalisieren einen Assertion-Fehler innerhalb von DuckDB. Sie treten in der Regel durch unerwartete Bedingungen oder Fehler in der Programmlogik auf.
Beispielsweise führt das Ausführen von Issue 17002 auf DuckDB v1.2.1 zu einem internen Fehler.
INTERNAL Error:Attempted to access index 3 within vector of size 3Das Problem ist in DuckDB v1.2.2 und neueren Versionen behoben.
Nach einem internen Fehler wechselt DuckDB in den „restricted mode“. Jede weitere Operation führt dann zu folgender Fehlermeldung:
FATAL Error:Failed: database has been invalidated because of a previous fatal error.The database must be restarted prior to being used again.Um mit derselben Datenbank weiterzuarbeiten, starten Sie eine neue DuckDB-Sitzung auf derselben Datenbank.
DuckDB wechselt in den „restricted mode“, weil die Datenbank in einem undefinierten Zustand ist. Interne Fehler sind per Definition Bugs, die nie auftreten sollten; der Codepfad wird daher nie getestet.
Wenn Sie auf einen internen Fehler stoßen, erstellen Sie bitte ein möglichst kleines reproduzierbares Beispiel und reichen Sie ein Issue im DuckDB-Issue-Tracker ein.