Re: mod_fastcgi
Gerardo Diaz Cuellar (gdiaz@blackbox.cegs.itesm.mx)
Fri, 12 Sep 1997 12:55:38 -0600 (GMT-0600)
Date: Fri, 12 Sep 1997 12:55:38 -0600 (GMT-0600)
From: Gerardo Diaz Cuellar <gdiaz@blackbox.cegs.itesm.mx>
To: Jonathan Roy <roy@atlantic.net>
Subject: Re: mod_fastcgi
In-Reply-To: <3.0.2.32.19970911203338.0072d638@rio.atlantic.net>
Message-Id: <Pine.NXT.3.91.970912125453.5403C-100000@blackbox>
Ok thanks.
The archive you talk about sounds to be a good solution to these buggy
problems.
Regards
-Gerardo
On Thu, 11 Sep 1997, Jonathan Roy wrote:
>
> As far as I can tell, the patches are not in either devkit on the web
> site. Using them with fastcgi programs written in C on Solaris (and maybe
> IRIX), you should expect them to eventually lock up and need to restart
> your web server.
>
> The main problem is that the first accept() the fastcgi program does is
> missing the AcquireLock() ReleaseLock() code. Thus, if two cgis start near
> each other, they might both call accept. Solaris doesn't let you call
> accept multiple times on a socket, and you end up with an error state it
> can't recover from.. so your fastcgi programs freeze up, and no more fcgi
> until you restart the web server. This is fixed simply by adding locking
> around the initial accept().
>
> The 2nd problem which was only found after the accept() was fixed, is
> that sometimes a lot of processes might die that shoudln't. We have a
> fastcgi that checks the mod time on it's config file, and if it changed it
> will exit after the current connection. This way when we change a config,
> all the fastcgis in that pool will cleanly restart on their own. The
> problem was, with say 5 processes and updating the config file, 80+ new
> fastcgis eventually started and died, with 5 eventually returning. That
> error is in the way it checks if it is a FCGI. Basically, the check is
> broken, and the result is that if two or more processes are trying to
> determine if they are cgi or fastcgi, they will think they are cgi, and
> exit after the first connection they handle.
>
> Anyways, those are the two problems as best as I can remember them. The
> fixes are applied to FCGI.pm 0.31 so if you stick to perl on Solaris you
> should be safe. The email archive on fastcgi.com appears to still be
> non-functional. :/ Whenever I get more time, I'm going to set up MonARC or
> a similar mailing list archiver and subscribe it to the list, so we can all
> have a fastcgi archive. It's annoying to keep forwarding people old
> patches. ;)
>
> -Jonathan
>
> At 06:13 PM 9/11/97 -0600, Gerardo Diaz Cuellar wrote:
> >Ok i gotted it.
> >
> >So, the accept() fix migth not be still on the binaries of the
> >fcgi-devel-kit unless Roy tells us their are? Expecting response Roy.
> >
> >So whats the bug, that your pathces to mod_fcgi dealt with and now
> >prevents fcgis from hanging?
> >
> >regards
> >
> >-Gerardo
> >
> >On Thu, 11 Sep 1997, Stanley Gambarin wrote:
> >
> >>
> >>
> >> On Thu, 11 Sep 1997, Gerardo Diaz Cuellar wrote:
> >>
> >> > Ok, so which are the newest version which includes all the patches and
> >> > has everything fix? ON FCGI? and on PERL5 sfio?
> >> >
> >>
> >> I guess i should clarify the issue here... there are 3 separate
> >> parts here..
> >> 1. mod_fastcgi module that implements FastCGI protocol
> >> functionality for the apache server by translating HTTP requests into
> >> FastCGI requests and back
> >> 2. FCGI developer kit - which implements the protocol for the
> >> FastCGI application.. this covers overwriting stdio routines, FCGX_*
> >> functions, etc.
> >> 3. Application libraries which allow implementation of the
> >> of the FastCGI applications in the language other than C. They are build
> >> on top of the FCGX_* routines.
> >>
> >> I (personally) am dealing with (1) only and am not involved
> >> in anything else.. (no time)
> >>
> >> (2) is still "maintined" by OpenMarket, but as far as I know,
> >> the accept() fix was NOT put in the latest developer kit (i may be
> >> mistaken, so Roy, if you can check it against whatever is on the
> >> website www.fastcgi.com... would appreacite it).
> >>
> >> As for the (3), most of the libraries are still provides by
> >> OpenMarket, with the following exceptions:
> >> There are some changes for Java code to make it work with 1.2
> >> release of JDK (or is it 1.1.3 ?)
> >> Perl-FCGI module, which is maintained by Sven. Latest version
> >> is .031 i think.
> >>
> >> So, the whole purpose of this letter is ... next time when
> >> you reporting problems/requesting enhancements/just baabbling, make
> >> sure to report with one of the 3 items above you are
> >> referring to...
> >>
> >> Stanley.
> >>
> >>
> >>
> >
> >
>
> --
> Jonathan Roy - roy@idle.com - Idle Communications, Inc.
> Idle Communications, Inc. accepts contract programming
> work for general purpose tools (or CGI) in Perl/C/C++.
>
>