You are viewing a plain text version of this content. The canonical link for it is here.
Posted to apache-bugdb@apache.org by Steve VanDevender <st...@darkwing.uoregon.edu> on 1999/10/05 20:15:47 UTC

general/5102: Apache 1.3.9 unable to allocate file descriptors

>Number:         5102
>Category:       general
>Synopsis:       Apache 1.3.9 unable to allocate file descriptors
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    apache
>State:          open
>Class:          sw-bug
>Submitter-Id:   apache
>Arrival-Date:   Tue Oct  5 11:20:10 PDT 1999
>Last-Modified:
>Originator:     stevev@darkwing.uoregon.edu
>Organization:
apache
>Release:        1.3.9
>Environment:
Solaris 2.7, current recommended patch set as of 1999/10/05
SunOS darkwing 5.7 Generic_106541-07 sun4u sparc
Apache 1.3.9 built with gcc 2.8.1, configured with:

CC="gcc" \
OPTIM="-O3 -fschedule-insns -pipe" \
./configure \
"--with-layout=UO.layout:UO" \
"--enable-module=status" \
"--enable-module=info" \
"--enable-module=log_referer" \
"--enable-module=log_agent" \
"$@"
>Description:
I am reporting this as suggested in apache_1.3.9/src/CHANGES.

We have an Apache installation with about 12 IP-based virtual hosts and almost
40 name-based virtual hosts.  We also recently moved from using mod_log_referer
and mod_log_agent for referer_log and agent_log to using CustomLog directives
(partly in order to be able to log virtual host information in referer_log).  
This originally involved adding appropriate CustomLog directives to each virtual
host declaration, meaning that each virtual host now contained four log
directives.  Although the server was successfully restarted when we added
our last virtual host and when we changed the referer_log/agent_log mechanism,
our Apache server did not start properly after a reboot this morning, logging:

[Tue Oct  5 07:48:03 1999] [warn] (24)Too many open files: unable to open a file descriptor above 15, you may need to increase the n
umber of descriptors

Despite the [warn] severity, the server did not start.

As recommended in apache_1.3.9/src/CHANGES, recompiling with -DHIGH_SLACK_LINE=256
solved the problem.  I also reorganized our configuration so it would not be
necessary to specify log directives in our name-based virtual hosts, which I
hope will cut down on the total number of log file descriptors required.
>How-To-Repeat:
Other than attempting to configure a server in a manner and with a number of
virtual hosts similar to ours, I cannot think of how you would duplicate this 
yourselves.
>Fix:
Perhaps -DHIGH_SLACK_LINE=256 should be the default for Solaris (also maybe
depending on the Solaris version).
>Audit-Trail:
>Unformatted:
[In order for any reply to be added to the PR database, you need]
[to include <ap...@Apache.Org> in the Cc line and make sure the]
[subject line starts with the report component and number, with ]
[or without any 'Re:' prefixes (such as "general/1098:" or      ]
["Re: general/1098:").  If the subject doesn't match this       ]
[pattern, your message will be misfiled and ignored.  The       ]
["apbugs" address is not added to the Cc line of messages from  ]
[the database automatically because of the potential for mail   ]
[loops.  If you do not include this Cc, your reply may be ig-   ]
[nored unless you are responding to an explicit request from a  ]
[developer.  Reply only with text; DO NOT SEND ATTACHMENTS!     ]