Fehler #358
segmentation fault in DBI.so beim versenden einer Rechnung per E-Mail
0%
Beschreibung
Komisch, aber bei mit reproduzierbar:
Wenn ich eine bestimmte Rechnung per Mail versenden möchte, also den E-Mail-Dialog öffne, so bleibt dieser leer und die Antwort an den Browser ist ein internal server error.
Das passiert bei mir nur mit genau dieser einen Rechnung - andere funktionieren. Reproduzierbar auch nach apache-Neustart/postgresql-Neustart/Rechner-Neustart.
Egal ob fcgi oder cgi.
apache-error-log sagt:
End of script output before headers: dispatcher.pl, referer: https://specht.kivitendo.de/kivitendo-bernd/is.pl?action=edit&id=12&callback=ar.pl%3faction%3dar_transactions%26l_transdate%3dY%26l_invnumber%3dY%26l_name%3dY%26l_netamount%3dY%26l_amount%3dY%26l_paid%3dY%26open%3dY%26closed%3dY%26sort%3dtransdate
syslog sagt:
dispatcher.pl: segfault at f ip 00007fb39d67d173 sp 00007fff8e34b3c0 error 4 in DBI.so[7fb39d666000+20000]
kivi: aktuelle unstable (commit 34540341e99827781065740f9dad625d17d42f07)
BS: Ubuntu 18.04.1 LTS
perl: v5.26.1
libdbi-perl: 1.640-1
Zugehörige Revisionen
Historie
Von Bernd Bleßmann vor etwa 6 Jahren aktualisiert
Ich habe mal etwas genauer geschaut. Der Fehler hat irgendwas mit dem Dateimanagement zu tun. In SL/File.pm geht in sub get_all_versions das clone irgendwie schief (oder irgendwas davor). Aber warum gerade bei dieser einen Rechnung, weiß ich nicht.
Ah - die Rechnung hat mehrere Dateiversionen und mindestens eine davon ist nicht (mehr) im Dateisystem vorhanden. Gut, damit kann ich dass dann auch bei anderen Rechnungen provozieren (Rg erzeugen, 3xdrucken (mit eingeschaltetem Dateimanagement und Speichern im Dateisystem), zwei Versionen davon (1. und 2.?) aus dem Dateisystem löschen, Rg. neu öffnen und versuchen, den E-Mail-Dialog zu öffnen).
Von Anonym vor etwa 6 Jahren aktualisiert
- Status wurde von Neu zu Erledigt geändert
In neuer Version ist der Fehler nicht reproduzierbar.
Von Bernd Bleßmann vor mehr als 4 Jahren aktualisiert
Niclas Zimmermann schrieb:
In neuer Version ist der Fehler nicht reproduzierbar.
Mhm - leider doch noch reproduzierbar und vorhanden. Kann den Status aber nicht ändern.
Egal, gleich kommt ein commit dazu.
File: Kein deep clone von Strukturen machen die SL::DB::* Objekte enthalten
Das führt zu Duplizierungen von Singletons, in diesem Fall der
Datenbankverbindung die dann beim abbauen kaputtgehen.
(cherry picked from commit 9a86234c1a5624573a3f2738cf25b526527796c8)
Behebt #358 (redmine).