Projekt

Allgemein

Profil

Fehler #358

segmentation fault in DBI.so beim versenden einer Rechnung per E-Mail

Von Bernd Bleßmann vor etwa 6 Jahren hinzugefügt. Vor mehr als 4 Jahren aktualisiert.

Status:
Erledigt
Priorität:
Normal
Zugewiesen an:
-
Zielversion:
-
Beginn:
29.08.2018
Abgabedatum:
% erledigt:

0%

Geschätzter Aufwand:

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

Revision 0d6ff79f (diff)
Von Sven Schöling vor mehr als 4 Jahren hinzugefügt

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).

Historie

#1

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).

#2

Von Anonym vor etwa 6 Jahren aktualisiert

  • Status wurde von Neu zu Erledigt geändert

In neuer Version ist der Fehler nicht reproduzierbar.

#3

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.

Auch abrufbar als: Atom PDF