On Tue, 3 Jul 2001, Cliff Woolley wrote:

> On 3 Jul 2001 [EMAIL PROTECTED] wrote:
>
> >
> >   -    if (idle_thread_count > max_spare_threads * ap_max_daemons_limit) {
> >   +    if (idle_thread_count > max_spare_threads * total_non_dead) {
> >            /* Kill off one child */
> >            char char_of_death = '!';
> >            if ((rv = apr_file_write(pipe_of_death_out, &char_of_death, &one)) != 
>APR_SUCCESS) {
> >   @@ -1011,7 +1011,7 @@
> >            }
> >            idle_spawn_rate = 1;
> >        }
> >   -    else if (idle_thread_count < min_spare_threads * ap_max_daemons_limit) {
> >   +    else if (idle_thread_count < min_spare_threads * total_non_dead) {
> >            /* terminate the free list */
> >            if (free_length == 0) {
>
> Phew, okay, that looks a lot better to me.  I knew there was something
> fishy about multiplying by ap_max_daemons_limit.  =-)

Yeah, it fixed the symptom, but not the cause.  This has it I think,
because now when I start the server, it starts 3 child processes, and
kills 2.  Which is correct if you look at my minsparethreads directive.
:-)  Plus, it grows to handle the 10000 requests I am throwing at it 500
at a time  :-)

Ryan

_____________________________________________________________________________
Ryan Bloom                              [EMAIL PROTECTED]
Covalent Technologies                   [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to