You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@perl.apache.org by Jeff Chen <jc...@attbi.com> on 2002/08/08 20:09:26 UTC

[mp2.0] cannot get test connection even though apache2 functional

I am having problems deploying modperl2.0 in my environment.  The Apache2
server can serve pages correctly, but when invoked using modperl testing, it
appears not to respond to the test requests.  I have tested Apache2 with SSL
requests as well as mod_auth_ldap and mod_proxy operations for normal port
80 and 443 services.  For some reason, I just cannot get through modperl2.0
test.  I need to deploy mod_perl 2.0 and would appreciate any help you can
offer in getting this resolved.

Thanks,
Jeff

-------------8<---------- Start Bug Report ------------8<----------
1. Problem Description:

I can serve pages with my Apache2 built
with --enable-so --enable-ssl --enable-proxy --with-mpm=worker, in addition
to PerlIO and ithreads enabled perl 5.6.1, but I cannot pass modperl2.0 make
test.  The test configuration is such that the apache2 server does not seem
to answer the requests.  This is no doubt a newbie question, but I am not
sure how to further diagnose this problem or solve it.  Any help you can
offer would be greatly appreciated.

The output of "make test" follows:

cd "src/modules/perl" && make -f Makefile.modperl
make[1]: Entering directory `/var/tmp/modperl-2.0/src/modules/perl'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/var/tmp/modperl-2.0/src/modules/perl'
make[1]: Entering directory `/var/tmp/modperl-2.0/Apache-Test'
make[1]: Leaving directory `/var/tmp/modperl-2.0/Apache-Test'
make[1]: Entering directory `/var/tmp/modperl-2.0/ModPerl-Registry'
make[1]: Leaving directory `/var/tmp/modperl-2.0/ModPerl-Registry'
make[1]: Entering directory `/var/tmp/modperl-2.0/WrapXS'
make[2]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/Base64'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/Base64'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/Brigade'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/Brigade'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/Bucket'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/Bucket'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/Date'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/Date'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/NetLib'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/NetLib'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/OS'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/OS'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/Pool'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/Pool'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/SockAddr'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/SockAddr'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/Socket'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/Socket'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/String'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/String'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/Table'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/Table'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/ThreadMutex'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/ThreadMutex'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/URI'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/URI'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/UUID'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/UUID'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/APR/Util'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR/Util'
make[2]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/APR'
make[2]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/Access'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/Access'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/CmdParms'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/CmdParms'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/Command'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/Command'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/Connection'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/Connection'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/Directive'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/Directive'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/Filter'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/Filter'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/FilterRec'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/FilterRec'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/HookRun'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/HookRun'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/Log'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/Log'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/Module'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/Module'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/Process'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/Process'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/RequestIO'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/RequestIO'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/RequestRec'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/RequestRec'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/RequestUtil'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/RequestUtil'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/Response'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/Response'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/Server'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/Server'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/ServerUtil'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/ServerUtil'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/SubProcess'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/SubProcess'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/SubRequest'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/SubRequest'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/URI'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/URI'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/Apache/Util'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache/Util'
make[2]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/Apache'
make[2]: Entering directory `/var/tmp/modperl-2.0/WrapXS/ModPerl'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/ModPerl/Global'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/ModPerl/Global'
make[3]: Entering directory `/var/tmp/modperl-2.0/WrapXS/ModPerl/Util'
make[3]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/ModPerl/Util'
make[2]: Leaving directory `/var/tmp/modperl-2.0/WrapXS/ModPerl'
make[1]: Leaving directory `/var/tmp/modperl-2.0/WrapXS'
make[1]: Entering directory `/var/tmp/modperl-2.0/docs/api/mod_perl-2.0'
make[1]: Leaving directory `/var/tmp/modperl-2.0/docs/api/mod_perl-2.0'
make[1]: Entering directory `/var/tmp/modperl-2.0/xs'
make[2]: Entering directory `/var/tmp/modperl-2.0/xs/APR'
make[3]: Entering directory `/var/tmp/modperl-2.0/xs/APR/APR'
make[3]: Leaving directory `/var/tmp/modperl-2.0/xs/APR/APR'
make[3]: Entering directory `/var/tmp/modperl-2.0/xs/APR/Const'
make[3]: Leaving directory `/var/tmp/modperl-2.0/xs/APR/Const'
make[3]: Entering directory `/var/tmp/modperl-2.0/xs/APR/PerlIO'
make[3]: Leaving directory `/var/tmp/modperl-2.0/xs/APR/PerlIO'
make[2]: Leaving directory `/var/tmp/modperl-2.0/xs/APR'
make[2]: Entering directory `/var/tmp/modperl-2.0/xs/Apache'
make[3]: Entering directory `/var/tmp/modperl-2.0/xs/Apache/Const'
make[3]: Leaving directory `/var/tmp/modperl-2.0/xs/Apache/Const'
make[2]: Leaving directory `/var/tmp/modperl-2.0/xs/Apache'
make[2]: Entering directory `/var/tmp/modperl-2.0/xs/ModPerl'
make[3]: Entering directory `/var/tmp/modperl-2.0/xs/ModPerl/Const'
make[3]: Leaving directory `/var/tmp/modperl-2.0/xs/ModPerl/Const'
make[2]: Leaving directory `/var/tmp/modperl-2.0/xs/ModPerl'
make[1]: Leaving directory `/var/tmp/modperl-2.0/xs'
/usr/bin/perl -Iblib/arch/Apache2 -Iblib/lib/Apache2 \
t/TEST -clean
*** setting ulimit to allow core files
ulimit -c unlimited; t/TEST -clean
APACHE_USER= APXS= APACHE_PORT= APACHE_GROUP= APACHE= \
/usr/bin/perl -Iblib/arch/Apache2 -Iblib/lib/Apache2 \
t/TEST
*** setting ulimit to allow core files
ulimit -c unlimited; t/TEST
/usr/local/apache2/bin/httpd  -d /var/tmp/modperl-2.0/t -f
/var/tmp/modperl-2.0/t/conf/httpd.conf -DAPACHE2 -DPERL_USEITHREADS
using Apache/2.0.39 (worker MPM)

waiting for server to start: .[Thu Aug 08 11:29:49 2002] [info] 20 Apache::
modules loaded
[Thu Aug 08 11:29:49 2002] [info] 5 APR:: modules loaded
[Thu Aug 08 11:29:49 2002] [info] base server + 6 vhosts ready to run tests
.[Thu Aug 08 11:29:49 2002] [info] 19 Apache:: modules loaded
[Thu Aug 08 11:29:49 2002] [info] 5 APR:: modules loaded
[Thu Aug 08 11:29:49 2002] [info] base server + 6 vhosts ready to run tests
...........................................................
waiting for server to start: giving up after 61 secs
!!! server failed to start! (please examine t/logs/error_log)
make: *** [run_tests] Error 1


The content of t/logs/error_log follows:
[Thu Aug 08 11:32:12 2002] [info] Init: Initializing OpenSSL library
[Thu Aug 08 11:32:12 2002] [info] Init: Seeding PRNG with 0 bytes of entropy
[Thu Aug 08 11:32:12 2002] [info] Init: Generating temporary RSA private
keys (512/1024 bits)
[Thu Aug 08 11:32:12 2002] [info] Init: Generating temporary DH parameters
(512/1024 bits)
[Thu Aug 08 11:32:12 2002] [warn] Init: Session Cache is not configured
[hint: SSLSessionCache]
[Thu Aug 08 11:32:12 2002] [info] Init: Initializing (virtual) servers for
SSL
[Thu Aug 08 11:32:12 2002] [info] Server: Apache/2.0.39, Interface:
mod_ssl/2.0.39, Library: OpenSSL/0.9.6e
END in modperl_extra.pl, pid=10899
END in modperl_extra.pl, pid=10899
END in modperl_extra.pl, pid=10899
END in modperl_extra.pl, pid=10899

2. Used Components and their Configuration:

*** using lib/Apache/BuildConfig.pm
*** Makefile.PL options:
  MP_APXS         => /usr/local/apache2/bin/apxs
  MP_GENERATE_XS  => 1
  MP_INST_APACHE2 => 1
  MP_LIBNAME      => mod_perl
  MP_USE_DSO      => 1
  MP_USE_STATIC   => 1


*** /usr/local/apache2/bin/httpd -V
Server version: Apache/2.0.39
Server built:   Aug  8 2002 11:05:19
Server's Module Magic Number: 20020612:1
Architecture:   32-bit
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/worker"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D HTTPD_ROOT="/usr/local/apache2"
 -D SUEXEC_BIN="/usr/local/apache2/bin/suexec"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="conf/mime.types"
 -D SERVER_CONFIG_FILE="conf/httpd.conf"


*** /usr/local/bin/perl -V
Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
  Platform:
    osname=linux, osvers=2.4.7-10, archname=i686-linux-thread-multi-perlio
    uname='linux comet 2.4.7-10 #1 thu sep 6 17:27:27 edt 2001 i686 unknown
'
    config_args=''
    hint=previous, useposix=true, d_sigaction=define
    usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
  Compiler:
    cc='cc', ccflags
='-D_REENTRANT -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE
 -D_FILE_OFFSET_BITS=64',
    optimize='-O2',




cppflags='-D_REENTRANT -fno-strict-aliasing -I/usr/local/include -D_LARGEFIL
E_SOURCE -D_FILE_OFFSET_BITS=64'
    ccversion='', gccversion='2.96 20000731 (Red Hat Linux 7.1 2.96-98)',
gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
    alignbytes=4, usemymalloc=n, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib
    libs=-lnsl -lndbm -lgdbm -ldl -lm -lpthread -lc -lcrypt -lutil
    perllibs=-lnsl -ldl -lm -lpthread -lc -lcrypt -lutil
    libc=/lib/libc-2.2.4.so, so=so, useshrplib=false, libperl=libperl.a
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
    cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'


Characteristics of this binary (from libperl):
  Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES
PERL_IMPLICIT_CONTEXT
  Built under linux
  Compiled at Aug  8 2002 09:43:13
  %ENV:
    PERL_LWP_USE_HTTP_10="1"
  @INC:
    /usr/local/lib/perl5/5.6.1/i686-linux-thread-multi
    /usr/local/lib/perl5/5.6.1
    /usr/local/lib/perl5/site_perl/5.6.1/i686-linux-thread-multi
    /usr/local/lib/perl5/site_perl/5.6.1
    /usr/local/lib/perl5/site_perl
    .


3. This is the core dump trace: (if you get a core dump):

  [CORE TRACE COMES HERE]

This report was generated by t/REPORT on Thu Aug  8 15:44:36 2002 GMT.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: [mp2.0] cannot get test connection even though apache2 functional

Posted by Stas Bekman <st...@stason.org>.
Jeff Chen wrote:
> I am having problems deploying modperl2.0 in my environment.  The Apache2
> server can serve pages correctly, but when invoked using modperl testing, it
> appears not to respond to the test requests.  I have tested Apache2 with SSL
> requests as well as mod_auth_ldap and mod_proxy operations for normal port
> 80 and 443 services.  For some reason, I just cannot get through modperl2.0
> test.  I need to deploy mod_perl 2.0 and would appreciate any help you can
> offer in getting this resolved.

I confirm that 5.6.1+worker doesn't start the server during 'make test' 
on linux. All threaded mpms (including worker) require perl 5.8.0 to 
work. (though it takes about 27 secs to start on my machine :()

Also please notice that README says:

mod_perl is currently considered beta when used with the prefork MPM.

mod_perl is currently considered alpha when used with a threaded MPM.

So be careful when you decide to deploy mod_perl 2.0 in production now.

__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org