stas 2004/08/26 16:48:41 Modified: src/docs/2.0/user Changes.pod src/docs/2.0/user/troubleshooting troubleshooting.pod Log: A new troubleshooting section on how to resolve can't locate file foo, when there is a system limit on the maximum open files. Revision Changes Path 1.5 +4 -0 modperl-docs/src/docs/2.0/user/Changes.pod Index: Changes.pod =================================================================== RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/Changes.pod,v retrieving revision 1.4 retrieving revision 1.5 diff -u -u -r1.4 -r1.5 --- Changes.pod 26 Jan 2004 19:10:40 -0000 1.4 +++ Changes.pod 26 Aug 2004 23:48:41 -0000 1.5 @@ -11,6 +11,10 @@ =head1 ... +A new troubleshooting section on how to resolve can't locate file foo, +when there is a system limit on the maximum open files. By Ken Simpson +E<lt>ksimpsonE<lt>atE<gt>larch.mailchannels.comE<gt>. + A few corrections in the config chapter by Jean-Sébastien Guay E<lt>jean_seb E<lt>atE<gt> videotron.caE<gt>. 1.24 +48 -0 modperl-docs/src/docs/2.0/user/troubleshooting/troubleshooting.pod Index: troubleshooting.pod =================================================================== RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/troubleshooting/troubleshooting.pod,v retrieving revision 1.23 retrieving revision 1.24 diff -u -u -r1.23 -r1.24 --- troubleshooting.pod 25 May 2004 02:04:15 -0000 1.23 +++ troubleshooting.pod 26 Aug 2004 23:48:41 -0000 1.24 @@ -21,6 +21,54 @@ =head1 Configuration and Startup +=head2 Can't locate F<TestFilter/in_str_consume.pm> in C<@INC>... + +Sometimes you get a problem of perl not being able to locate a certain +Perl module. This can happen in the mod_perl test suite or in the +normal mod_perl setup. One of the possible reasons is a low limit on +the number of files that can be opened by a single process. To check +whether this is the problem run the process under C<strace(1)> or an +equivalent utility. + +For example on OpenBSD 3.5 the default setting for a maximum number of +files opened by a single process seems to be 64, so when you try to +run the mod_perl test suite, which opens a few hundreds of files, you +will have a problem. e.g. the test suite may fail as: + + [Wed Aug 25 09:49:40 2004] [info] 26 Apache:: modules loaded + [Wed Aug 25 09:49:40 2004] [info] 7 APR:: modules loaded + [Wed Aug 25 09:49:40 2004] [info] base server + 20 vhosts ready + to run tests + [Wed Aug 25 09:49:40 2004] [error] Can't locate + TestFilter/in_str_consume.pm in @INC (@INC contains: ... + +Running the system calls tracing program (C<ktrace(1)> on OpenBSD, +C<strace(1)> on Linux): + + % sudo ktrace -d /usr/local/apache/bin/httpd -d /tmp/mod_perl-2.0/t \ + -f /tmp/mod_perl-2.0/t/conf/httpd.conf -DAPACHE2 -X + +looking at the ktrace dump reveals: + + 16641 httpd NAMI "/tmp/mod_perl-2.0/t/lib/TestFilter/in_str_consume.pmc" + 16641 httpd RET stat -1 errno 2 No such file or directory + 16641 httpd CALL open(0x3cdae100,0,0) + 16641 httpd RET open -1 errno 24 Too many open files + +It's clear that Perl can't load F<TestFilter/in_str_consume.pm> +because it can't open the file. + +This problem can be resolved by increasing the open file limit to 128 +(or higher): + + $ ulimit -n 128 + + + + + + + =head2 "mod_perl.c" is not compatible with this version of Apache (found 20020628, need 20020903)
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]