Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-02 Thread Christopher B. Liebman
Ok, after some investigation I am starting to think that the issue is with
the behavior of accept().  When the apache main forks off its pool of worker
procs, each one calls accept() on the socket file descriptor.  What I have
found is that when the first process in the pool exits (usually due to the
max requests being reached) ***none*** of the other pool process return from
accept() when the next request comes in on the socket.  If I kill off the
current pool procs the *first* new one will respond to requests untill the
max is recieved again then as before, non of the other pool procs return
from accept.  Any ideas on how to deal with this?

-- Chris



- Original Message - 
From: "Christopher B. Liebman" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Saturday, May 31, 2003 10:26 AM
Subject: apache cygwin package hangs when MaxRequestsPerChild reached!


> It seems that there is a bug somewhere in the server pool handling in
apache
> under cygwin, When MaxRequestsPerChild is reached it hangs!  Repeat by
> setting MaxRequestsPerChild to 5 and making sequental requests...  the
6'th
> times out.  I'm running the latest cygwin and the cygwin apache package.
My
> server pool config is:
>
> MinSpareServers 4
> MaxSpareServers 10
> StartServers 5
> MaxClients 150
> MaxRequestsPerChild 5
>
>
> Anyone have any ideas?
>
> -- Chris
>
>
> --
> Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
> Problem reports:   http://cygwin.com/problems.html
> Documentation: http://cygwin.com/docs.html
> FAQ:   http://cygwin.com/faq/
>


--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-02 Thread Stipe Tolj
Hi Christopher,

"Christopher B. Liebman" schrieb:
> 
> Ok, after some investigation I am starting to think that the issue is with
> the behavior of accept().  When the apache main forks off its pool of worker
> procs, each one calls accept() on the socket file descriptor.  What I have
> found is that when the first process in the pool exits (usually due to the
> max requests being reached) ***none*** of the other pool process return from
> accept() when the next request comes in on the socket.  If I kill off the
> current pool procs the *first* new one will respond to requests untill the
> max is recieved again then as before, non of the other pool procs return
> from accept.  Any ideas on how to deal with this?

ok, this is a pretty good description of the problem I guess.

Let's ask Corinna, Chris et al for their explanation if something in
the accept() behaviour *inside* Cygwin changed from 1.3.10+ ?!?!?!?

Stipe

[EMAIL PROTECTED]
---
Wapme Systems AG

Vogelsanger Weg 80
40470 Düsseldorf

Tel: +49-211-74845-0
Fax: +49-211-74845-299

E-Mail: [EMAIL PROTECTED]
Internet: http://www.wapme-systems.de
---
wapme.net - wherever you are

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Corinna Vinschen
On Sun, Jun 01, 2003 at 04:17:06PM -0700, Christopher B. Liebman wrote:
> Ok, after some investigation I am starting to think that the issue is with
> the behavior of accept().  When the apache main forks off its pool of worker
> procs, each one calls accept() on the socket file descriptor.  What I have
> found is that when the first process in the pool exits (usually due to the
> max requests being reached) ***none*** of the other pool process return from
> accept() when the next request comes in on the socket.  If I kill off the
> current pool procs the *first* new one will respond to requests untill the
> max is recieved again then as before, non of the other pool procs return
> from accept.  Any ideas on how to deal with this?

I've just applied a patch to Cygwin which hopefully solves that problem.
Please try out the next developers snapshot.

Corinna

-- 
Corinna Vinschen  Please, send mails regarding Cygwin to
Cygwin Developermailto:[EMAIL PROTECTED]
Red Hat, Inc.

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Stipe Tolj
Corinna Vinschen schrieb:
> 
> On Sun, Jun 01, 2003 at 04:17:06PM -0700, Christopher B. Liebman wrote:
> > Ok, after some investigation I am starting to think that the issue is with
> > the behavior of accept().  When the apache main forks off its pool of worker
> > procs, each one calls accept() on the socket file descriptor.  What I have
> > found is that when the first process in the pool exits (usually due to the
> > max requests being reached) ***none*** of the other pool process return from
> > accept() when the next request comes in on the socket.  If I kill off the
> > current pool procs the *first* new one will respond to requests untill the
> > max is recieved again then as before, non of the other pool procs return
> > from accept.  Any ideas on how to deal with this?
> 
> I've just applied a patch to Cygwin which hopefully solves that problem.
> Please try out the next developers snapshot.

great, thanks a lot Corinna! I guess this is the nightly snapshot,
right?

Stipe

[EMAIL PROTECTED]
---
Wapme Systems AG

Vogelsanger Weg 80
40470 Düsseldorf

Tel: +49-211-74845-0
Fax: +49-211-74845-299

E-Mail: [EMAIL PROTECTED]
Internet: http://www.wapme-systems.de
---
wapme.net - wherever you are

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Corinna Vinschen
On Mon, Jun 02, 2003 at 07:57:32PM +0200, Stipe Tolj wrote:
> Corinna Vinschen schrieb:
> > I've just applied a patch to Cygwin which hopefully solves that problem.
> > Please try out the next developers snapshot.
> 
> great, thanks a lot Corinna! I guess this is the nightly snapshot,
> right?

Yes.

Corinna

-- 
Corinna Vinschen  Please, send mails regarding Cygwin to
Cygwin Developermailto:[EMAIL PROTECTED]
Red Hat, Inc.

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Christopher B. Liebman
Thanks,
   I'll do a CVS update after work and give it a try!  I think that this may
also solve others issues with apache not serving for more than a day...
cross your fingers!  :-)

-- Chris

- Original Message - 
From: "Corinna Vinschen" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, June 02, 2003 11:11 AM
Subject: Re: Problem with accept?!! (was: Re: apache cygwin package hangs
when MaxRequestsPerChild reached!)


> On Mon, Jun 02, 2003 at 07:57:32PM +0200, Stipe Tolj wrote:
> > Corinna Vinschen schrieb:
> > > I've just applied a patch to Cygwin which hopefully solves that
problem.
> > > Please try out the next developers snapshot.
> >
> > great, thanks a lot Corinna! I guess this is the nightly snapshot,
> > right?
>
> Yes.
>
> Corinna
>
> -- 
> Corinna Vinschen  Please, send mails regarding Cygwin to
> Cygwin Developermailto:[EMAIL PROTECTED]
> Red Hat, Inc.
>
> --
> Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
> Problem reports:   http://cygwin.com/problems.html
> Documentation: http://cygwin.com/docs.html
> FAQ:   http://cygwin.com/faq/
>


--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Christopher B. Liebman
Bingo!   ***much*** better.   It will be intresting to get some feedback
from someone who is running an active web server with apache/cygwin.

-- Chris

- Original Message - 
From: "Christopher B. Liebman" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, June 02, 2003 11:19 AM
Subject: Re: Problem with accept?!! (was: Re: apache cygwin package hangs
when MaxRequestsPerChild reached!)


> Thanks,
>I'll do a CVS update after work and give it a try!  I think that this
may
> also solve others issues with apache not serving for more than a day...
> cross your fingers!  :-)
>
> -- Chris
>
> - Original Message - 
> From: "Corinna Vinschen" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Monday, June 02, 2003 11:11 AM
> Subject: Re: Problem with accept?!! (was: Re: apache cygwin package hangs
> when MaxRequestsPerChild reached!)
>
>
> > On Mon, Jun 02, 2003 at 07:57:32PM +0200, Stipe Tolj wrote:
> > > Corinna Vinschen schrieb:
> > > > I've just applied a patch to Cygwin which hopefully solves that
> problem.
> > > > Please try out the next developers snapshot.
> > >
> > > great, thanks a lot Corinna! I guess this is the nightly snapshot,
> > > right?
> >
> > Yes.
> >
> > Corinna
> >
> > -- 
> > Corinna Vinschen  Please, send mails regarding Cygwin to
> > Cygwin Developermailto:[EMAIL PROTECTED]
> > Red Hat, Inc.
> >
> > --
> > Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
> > Problem reports:   http://cygwin.com/problems.html
> > Documentation: http://cygwin.com/docs.html
> > FAQ:   http://cygwin.com/faq/
> >
>
>
> --
> Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
> Problem reports:   http://cygwin.com/problems.html
> Documentation: http://cygwin.com/docs.html
> FAQ:   http://cygwin.com/faq/
>


--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Stipe Tolj
"Christopher B. Liebman" wrote:
> 
> Bingo!   ***much*** better.   It will be intresting to get some feedback
> from someone who is running an active web server with apache/cygwin.

I do, but it's on top of Cygin 1.3.10-2 because of that damn reason. 

If I can confirm the fix, I'll upgrade to latest Cygwin snapshot.

So which snapshot did you positively tested?

Stipe

[EMAIL PROTECTED]
---
Wapme Systems AG

Vogelsanger Weg 80
40470 Düsseldorf

Tel: +49-211-74845-0
Fax: +49-211-74845-299

E-Mail: [EMAIL PROTECTED]
Internet: http://www.wapme-systems.de
---
wapme.net - wherever you are

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Stipe Tolj
"Christopher B. Liebman" wrote:
> 
> Bingo!   ***much*** better.   It will be intresting to get some feedback
> from someone who is running an active web server with apache/cygwin.

I definelty can *confirm* this has fixed the *long outstanding apache
hanging problem* :)

puh, I thought realy at some point it was up to apache ;)

Corinna, thanks a lot! Could you please mark the section which you
changed in CVS very good via comments so there comes none of the other
commiters and bounced things back into nirvana?!

Gerrit, this may be also solving our mysql problems?! At least I had
mysql running on cygwin 1.3.10-2 (which was the same old version for
my apache server). I could bet a dozen of guiness that we'll get mysql
to run with this fix too ;)

Stipe

[EMAIL PROTECTED]
---
Wapme Systems AG

Vogelsanger Weg 80
40470 Düsseldorf

Tel: +49-211-74845-0
Fax: +49-211-74845-299

E-Mail: [EMAIL PROTECTED]
Internet: http://www.wapme-systems.de
---
wapme.net - wherever you are

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Stipe Tolj
BTW,

I guess this is a good reason for having Cygwin 1.3.22-2 (or .23-1)
released?!

I'd like to update then the whole Apache packages, including a fresh
php build with additional php modules, etc.

Stipe

[EMAIL PROTECTED]
---
Wapme Systems AG

Vogelsanger Weg 80
40470 Düsseldorf

Tel: +49-211-74845-0
Fax: +49-211-74845-299

E-Mail: [EMAIL PROTECTED]
Internet: http://www.wapme-systems.de
---
wapme.net - wherever you are

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Gerrit P. Haase
Stipe schrieb:

> Gerrit, this may be also solving our mysql problems?! At least I had
> mysql running on cygwin 1.3.10-2 (which was the same old version for
> my apache server). I could bet a dozen of guiness that we'll get mysql
> to run with this fix too ;)

I hope so too.  Well it crashed freqquently with the old DLL too, but at
least it was possible to run the testsuite.

Since it seems that it is a runtime problem and not a compiletime
problem I'll try to run MySQL server with the snapshot Cygwin version.

Another problem with the latest snapshots was that I cannot build perl
with it, so upgrading cygwin-1.3.22 with only this one bug fixed would
be really great (and leave the whole rest in CVS).



Gerrit
-- 
=^..^=


--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Corinna Vinschen
On Tue, Jun 03, 2003 at 11:47:55AM +0200, Gerrit P. Haase wrote:
> Another problem with the latest snapshots was that I cannot build perl
> with it,

I wonder if it wouldn't be more productive to write *why* it fails to
build...

> so upgrading cygwin-1.3.22 with only this one bug fixed would
> be really great (and leave the whole rest in CVS).

This will not happen.

Corinna

-- 
Corinna Vinschen  Please, send mails regarding Cygwin to
Cygwin Developermailto:[EMAIL PROTECTED]
Red Hat, Inc.

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Gerrit P. Haase
Corinna schrieb:

> On Tue, Jun 03, 2003 at 11:47:55AM +0200, Gerrit P. Haase wrote:
>> Another problem with the latest snapshots was that I cannot build perl
>> with it,

> I wonder if it wouldn't be more productive to write *why* it fails to
> build...

I don't know why it fails.  I just see that the first simple test to
execute a perl statement with miniperl.exe (static perl binary) fails.
Since miniperl is used to build the rest of perl (the shared core and
all the modules) I cannot build perl.

I haven't debugged it yet.  I'll need to debug it, I know.


Gerrit
-- 
=^..^=


--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Corinna Vinschen
On Tue, Jun 03, 2003 at 12:45:48PM +0200, Gerrit P. Haase wrote:
> Corinna schrieb:
> 
> > On Tue, Jun 03, 2003 at 11:47:55AM +0200, Gerrit P. Haase wrote:
> >> Another problem with the latest snapshots was that I cannot build perl
> >> with it,
> 
> > I wonder if it wouldn't be more productive to write *why* it fails to
> > build...
> 
> I don't know why it fails.  I just see that the first simple test to
> execute a perl statement with miniperl.exe (static perl binary) fails.
> Since miniperl is used to build the rest of perl (the shared core and
> all the modules) I cannot build perl.
> 
> I haven't debugged it yet.  I'll need to debug it, I know.

Hint:

Be careful to strictly separate your building environment in two parts,
one with libcygwin.a and the headers from 1.3.22 (for building 1.3.x
compatible applications) and one with libcygwin.a and the headers from
the snapshot (building non-compatible 64 bit applications which only
run under the latest (1.5.0) snapshots so far).

If you only install the DLL and libcygwin.a from the snapshot but don't
replace the header files, too, the resulting applications are very good
candidates for crashing.  Applications build with new headers but with
the old libcygwin.a as well.  Headers and stub library must match to
work.

Corinna

-- 
Corinna Vinschen  Please, send mails regarding Cygwin to
Cygwin Developermailto:[EMAIL PROTECTED]
Red Hat, Inc.

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-03 Thread Gerrit P. Haase
Corinna schrieb:

>> I haven't debugged it yet.  I'll need to debug it, I know.

> Hint:

> Be careful to strictly separate your building environment in two parts,
[...]

Thanks, I already had trouble with this issue, 'entry point not
found...'.  Well, at least the most applications built with an older
Cygwin version are running with the 1.5 snapshot (besides my own Apache
which segfaults...).


Gerrit
-- 
=^..^=


--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/



Re: Problem with accept?!! (was: Re: apache cygwin package hangs when MaxRequestsPerChild reached!)

2003-06-04 Thread Corinna Vinschen
On Mon, Jun 02, 2003 at 07:41:02PM -0700, Christopher B. Liebman wrote:
> Bingo!   ***much*** better.   It will be intresting to get some feedback
> from someone who is running an active web server with apache/cygwin.

Would you mind to check out the latest from CVS and test it again?
Thomas Pfaff had a critical look into my solution and after some
mulling over the code we have an entirely new way to do blocking
accepts and connects.  It's probably somewhat slower than yesterday
but in contrast to yesterday, this new solution doesn't lose two
system handles per interrupted call.

Thanks in advance,
Corinna

-- 
Corinna Vinschen  Please, send mails regarding Cygwin to
Cygwin Developermailto:[EMAIL PROTECTED]
Red Hat, Inc.

--
Unsubscribe info:  http://cygwin.com/ml/#unsubscribe-simple
Problem reports:   http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ:   http://cygwin.com/faq/