Erstellt vor 4 Jahren

Geschlossen vor 4 Jahren

#1653 closed Fehler (fixed)

Abmelden gibt Internal Server Error (fcgi)

Erstellt von: bibi@… Verantwortlicher: s.schoeling@…
Priorität: normal Meilenstein:
Komponente: kivitendo ERP Version: 2.6.3 unstable
Schweregrad: normal Stichworte: Oberfläche
Beobachter: s.schoeling@…

Beschreibung

Hi,

ab commit 8431ef249e586b08e9c4ac24709ccda0c8e3b44e ergibt das Abmelden von Lx-Office mit fcgi bei mir einen Internal Server error.

Apache-Error-Log sagt:
[warn] mod_fcgid: stderr: Can't call method "dberror" on an undefined value at SL/DBUtils.pm line 47.
[warn] (104)Connection reset by peer: mod_fcgid: read data from fastcgi server error.
[error] [client 192.168.0.164] Premature end of script headers: dispatcher.fcgi, referer: http://lxbug.local/lx-erp/kopf.pl
[notice] mod_fcgid: process /var/lib/erp/lx-office-erp/dispatcher.fcgi(4256) exit(communication error), terminated by calling exit(), return code: 255

(Debian-Lenny, 64bit, fcgid)

Grüße

Bernd

Anhänge (1)

login_logout_trace.txt (240.2 KB) - hinzugefügt von bibi@… vor 4 Jahren.
eimal ein- und wieder ausloggen

Alle Anhänge herunterladen als: .zip

Änderungshistorie (12)

comment:1 Geändert vor 4 Jahren durch s.schoeling@…

  • Status von new nach assigned, s.schoeling@linet-services.de geändert
  • Verantwortlicher von m.bunkus@… nach s.schoeling@… geändert

Den schnapp ich mir mal, ist mein Commit.

comment:2 Geändert vor 4 Jahren durch s.schoeling@…

Moin Bernd. Die kopf.pl die bei Dir nen Fehler wirft, sollte es ein paar Commits später nicht mehr geben, zeih bitte mal die aktuelle version und teste das damit.

Ausserdem: Welches Menü benutzt Du, und kannst Du mir evtl nen Trace von so einem Absturz machen?

comment:3 Geändert vor 4 Jahren durch bibi@…

(In reply to comment #2)

Moin Bernd. Die kopf.pl die bei Dir nen Fehler wirft, sollte es ein paar
Commits später nicht mehr geben, zeih bitte mal die aktuelle version und teste
das damit.

Ok - ändert nichts.

Ausserdem: Welches Menü benutzt Du, und kannst Du mir evtl nen Trace von so
einem Absturz machen?

Der Fehler tritt bei allen Menüs auf. Trace kommt als Attachment.

Grüße

Bernd

Geändert vor 4 Jahren durch bibi@…

eimal ein- und wieder ausloggen

comment:4 Geändert vor 4 Jahren durch s.schoeling@…

Zieh mal 91c07c6, der Serverfehler sollte jetzt behoben sein, aber der maskiert glaube ich irgendein anderes Problem bei Dir. Jetzt sollte die Fehlermeldung angezeigt werden.

comment:5 Geändert vor 4 Jahren durch s.schoeling@…

Bernd? Noch da? Ich würd den bug gern ad acta legen.

comment:6 Geändert vor 4 Jahren durch bibi@…

(In reply to comment #6)

Bernd? Noch da? Ich würd den bug gern ad acta legen.

Hi Sven,

sorry, dass ich mich nicht mehr gemeldet hatte. War diese Woche etwas außer Gefecht.

Der Fehler tritt bei mir immer noch auf. Auch wird die Fehlermeldung weiterhin nur im apache-Log angezeigt. Im Browser kommt immer noch Internal Server Error.

Da kein anderer dieses Problem zu haben scheint, werde ich jetzt erstmal alle Einstellungen prüfen.

Ich habe zwei Server mit Lx-Office. Und habe zwei versch. Browser benutzt. Bei einem (firefox 3.5.16) tritt der Fehler bei beiden Servern auf, bei dem anderen (firefox 3.0.6) nur bei einem. Konqueror zeigt auch den Fehler.

Irgendwie ist beim Abmelden nach dem Löschen der Session die session_id nicht mehr gesetzt, die dann aber versucht wird in die DB einzutragen.

Wie gesagt, werde ich erst nochmal ein bisschen analysieren, da der Fehler nicht für andere nachvollziehbar ist.

Grüße

Bernd

comment:7 Geändert vor 4 Jahren durch s.schoeling@…

teste mal bitte mit ff4 und chromium, ob das a auch auftritt, das sind die beiden die ich zum entwickeln benutze.

comment:8 Geändert vor 4 Jahren durch bibi@…

Hallo Sven,

FF4 und chromium Zeigen dasselbe Verhalten. Auch kann ich die funktionierende Kombination aus Browser und Server nicht (mehr) bestätigen. Es gibt ganz seltene Fälle, in denen der Fehler nicht auftritt.
Ich habe auf lenny/32-Bit und squeeze/64-Bit jeweils ein komplett neues System mit Lx-Office aus dem git installiert. Immer dasselbe. Bei cgi oder mod_fastcgi tritt der Fehler nicht auf. Nur bei mod_fcgid.

Wenn ich den Programmpfad nachvollziehe, dann wird in bin/mozilla/login.pl im sub logout ein destroy_session aufgerufen, wobei die session_id auf undef gesetzt wird. Und später save_session (vom Dispatcher?), und da ist die session_id undefined. Diese soll aber in die DB eingetragen werden und dann knallt es. Passiert übrigens auch wenn ich mich als Admin abmelde, doch dort wird die DB-Fehlermeldung korrekt angezeigt:
'INSERT INTO auth.session (id, ip_address, mtime) VALUES (?, ?, now()) (, 192.168.0.184)
FEHLER: NULL-Wert in Spalte »id« verletzt Not-Null-Constraint'

Mir ist noch nicht ganz klar, wie nach destroy_session und dem redirect die session_id wieder hergestellt wird.

Was mich auch wundert, dass niemand das nachvollziehen kann. Entweder benutzt keiner Debian mit fcgid oder mache ich aus Gewohnheit jedes Mal eine komische Installation.

So weit. Grüße

Bernd

comment:9 Geändert vor 4 Jahren durch s.schoeling@…

Danke für die Analyse. Kann ich soweit nachvollziehen. Ich habe eine Theorie, warum das nur bei Dir kaputtgeht, aber das ist im Moment nicht wichtig.

Mit 01204ffdc7790d1d497b7f591e940d50e7c714a7 sollte das nicht mehr auftreten (hoffe ich).

comment:10 Geändert vor 4 Jahren durch bibi@…

Hallo Sven,

jetzt geht es ohne Fehler und Absturz - danke.

Irgendwann würde ich ja schon gerne wissen, wieso nur bei mir ...

Grüße

Bernd

comment:11 Geändert vor 4 Jahren durch s.schoeling@…

  • Lösung auf fixed gesetzt
  • Status von assigned nach closed geändert

(In reply to comment #11)

Hallo Sven,

jetzt geht es ohne Fehler und Absturz - danke.

Irgendwann würde ich ja schon gerne wissen, wieso nur bei mir ...

Schwer zu erklären, aber ja, es scheint ein Quirk von fcgid zu sein. Der Fehler tritt auf nachdem der Request abgearbeitet und an den User rausgeschickt wurde, und fcgid schafft es entgegen der Programmanweisung, dass danach noch ein Fehler angezeigt wird, was heisst, dass es autoflush ignoriert. Bisschen unschön.

Ich schließe den Bug.

Hinweis: Hilfe zur Verwendung von Tickets finden Sie in TracTickets.