2010-12-15 60 views
0

J'ai installé des passagers avec Nginx pour les tests ici et je continue à obtenir cette erreur après quelques milliers de demandes:Nginx + passager - Uncaught exception dans le thread client PassengerServer

[ pid=57259 thr=0x40f07780 file=ext/nginx/HelperAgent.cpp:576 time=2010-12-15 14:04:25.876 ]: Uncaught exception in PassengerServer client thread: 
    exception: write() failed: Socket is not connected (57) 
    backtrace: 
    in 'void Client::forwardResponse(Passenger::SessionPtr&, Passenger::FileDescriptor&)' (HelperAgent.cpp:368) 
    in 'void Client::handleRequest(Passenger::FileDescriptor&)' (HelperAgent.cpp:502) 
    in 'void Client::threadMain()' (HelperAgent.cpp:595) 

[ pid=57259 thr=0x40f07080 file=ext/nginx/HelperAgent.cpp:566 time=2010-12-15 14:04:26.416 ]: Couldn't forward the HTTP response back to the HTTP client: It seems the user clicked on the 'Stop' button in his browser. 

J'ai 2 serveurs, et je courais haproxy + apache + mongrel sur eux, j'ai changé l'un d'entre eux pour haproxy + nginx + passager (haproxy est seulement une sauvegarde pour mes tests, donc je peux rediriger vers l'ancien schéma rapidement en cas d'incendie). J'ai donc remarqué que mon passager meurt après ce message. Im en utilisant ruby-ee 1.8.7, rails 2.3.5 et FreeBSD.

Répondre

2

Cela s'avère être un bogue du noyau FreeBSD. Nous mettons lentement plus de solutions de contournement dans le code de base Phusion Passenger pour contourner ce problème.

+0

Si vous pouviez nous donner plus de détails sur le bug ou comment vous l'avez trouvé, ce serait vraiment utile je crois. – dknight

+0

http://www.freebsd.org/cgi/query-pr.cgi?pr=79138 et http://www.freebsd.org/cgi/query-pr.cgi?pr=144061 – Hongli