IBM HTTP Server reports ap_queue_info_set_idle failed errors
The ap_queue_info_set_idle failed errors occur in the IBM HTTP Server error.log.
The HTTP server is also exhibiting slow performance when the following errors are shown in the HTTP Server error.log.
[alert] (11)Resource temporarily
unavailable: apr_thread_create: unable to create worker thread
[emerg] (22)Invalid argument:
ap_queue_info_set_idle failed. Attempting to shutdown process
[crit] (22)Invalid argument: ap_queue_pop failed
The error.log is filling up with these errors quickly
EAGAIN Insufficient resources to create another thread, or a system-imposed limit on the number of threads was encountered. The latter case may occur in two ways:
1) The RLIMIT_NPROC soft resource limit (set via setrlimit(2)), which limits the number of process for a real user ID, was reached.
2) Or the kernel's system-wide limit on the number of threads, /proc/sys/kernel/threads-max, was reached.
When there is an an error starting a child process followed by a repeated error trying to get the same aborted process to shutdown, the latter is causing all of the log entries
Linux Distribution: Red Hat Enterprise Linux Server release 6.3
Resolving the problem
First step was increasing the threads to the following:
/proc/sys/kernel/threads-max = 120000
User proc limit 1024
However, the errors were not resolved until the stack size was reduced from 1024 to 256 in envvars.
ulimit -s 256.
The HTTP server needs to be completely stopped and restarted for the change to take effect.