[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#495656: apache2-mpm-worker: ThreadLimit directive goes unnoticed



Package: apache2-mpm-worker
Version: 2.2.3-4+etch4
Severity: important


Hi,

Using the ThreadLimit directive when configuring apache2 to use the 
mpm_worker_module, the startup messages show that this directive is 
ignored. Apache always maintains the value 64. 

there is a 

      #define DEFAULT_THREAD_LIMIT 64

setting in file 

	./server/mpm/worker/worker.c:

of the apache2 source package. 


Below a series of mpm_worker_module configurations and the associated 
start or stop messages. The series supports my notion that the directives 
are read and checked for consistency, but the value of ThreadLimit is 
always presupposed to be at its default value of 64 -- whatever the 
directive is. 

<IfModule mpm_worker_module>

ServerLimit     25
StartServers        10
MaxClients         1600
ThreadLimit        2
MinSpareThreads     25
MaxSpareThreads    256
ThreadsPerChild    1024
MaxRequestsPerChild  0

</IfModule>


scratch # /etc/init.d/apache2 start
=> 
Starting web server (apache2)...WARNING: ThreadsPerChild of 1024 exceeds ThreadLimit value of 64
threads, lowering ThreadsPerChild to 64. To increase, please see the
 ThreadLimit directive.


<IfModule mpm_worker_module>

ServerLimit     25
StartServers        10
MaxClients         1600
ThreadLimit        128
MinSpareThreads     25
MaxSpareThreads    256
ThreadsPerChild    1024
MaxRequestsPerChild  0

</IfModule>


scratch # /etc/init.d/apache2 stop
Stopping web server (apache2)...WARNING: ThreadsPerChild of 1024 exceeds ThreadLimit value of 64
threads, lowering ThreadsPerChild to 64. To increase, please see the
 ThreadLimit directive.
httpd (no pid file) not running



<IfModule mpm_worker_module>

ServerLimit     25
StartServers        10
MaxClients         3200
ThreadLimit        128
MinSpareThreads     25
MaxSpareThreads    256
ThreadsPerChild    128
MaxRequestsPerChild  0

</IfModule>


scratch # /etc/init.d/apache2 stop
=> 
Stopping web server (apache2)...WARNING: ThreadsPerChild of 128 exceeds ThreadLimit value of 64
threads, lowering ThreadsPerChild to 64. To increase, please see the
 ThreadLimit directive.
WARNING: MaxClients of 3200 would require 50 servers,
 and would exceed the ServerLimit value of 25.
 Automatically lowering MaxClients to 1600.  To increase,
 please see the ServerLimit directive.
httpd (no pid file) not running


<IfModule mpm_worker_module>

ServerLimit     25
StartServers        10
MaxClients         1600
ThreadLimit        128
MinSpareThreads     25
MaxSpareThreads    256
ThreadsPerChild    128
MaxRequestsPerChild  0

</IfModule>


scratch # /etc/init.d/apache2 stop
=> 
Stopping web server (apache2)...WARNING: ThreadsPerChild of 128 exceeds ThreadLimit value of 64
threads, lowering ThreadsPerChild to 64. To increase, please see the
 ThreadLimit directive.
httpd (no pid file) not running


<IfModule mpm_worker_module>

ServerLimit     25
StartServers        10
MaxClients         1600
ThreadLimit        1
MinSpareThreads     25
MaxSpareThreads    256
ThreadsPerChild    64
MaxRequestsPerChild  0

</IfModule>


scratch # /etc/init.d/apache2 start
=>
Starting web server (apache2)....

scratch # /etc/init.d/apache2 stop
=> 
Stopping web server (apache2)....


regards 

max.



-- System Information:
Debian Release: 4.0
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18
Locale: LANG=en_US.iso88591, LC_CTYPE=en_US.iso88591 (charmap=locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
ANSI_X3.4-1968)

Versions of packages apache2-mpm-worker depends on:
ii  apa 2.2.3-4+etch4                        Next generation, scalable, extenda
ii  lib 1.2.7-8.2                            The Apache Portable Runtime Librar
ii  lib 1.2.7+dfsg-2                         The Apache Portable Runtime Utilit
ii  lib 2.3.6.ds1-13etch5                    GNU C Library: Shared libraries
ii  lib 4.4.20-8                             Berkeley v4.4 Database Libraries [
ii  lib 1.95.8-3.4                           XML parsing C library - runtime li
ii  lib 2.1.30-13.3                          OpenLDAP libraries
ii  lib 6.7+7.4-3                            Perl 5 Compatible Regular Expressi
ii  lib 8.1.11-0etch1                        PostgreSQL C client library
ii  lib 3.3.8-1.1                            SQLite 3 shared library
ii  lib 1.39+1.40-WIP-2006.11.14+dfsg-2etch1 universally unique id library

apache2-mpm-worker recommends no packages.

-- debconf information excluded





Reply to: