You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@perl.apache.org by Stas Bekman <st...@stason.org> on 2003/01/20 00:27:06 UTC
Re: [mp2] make test errors w/. threadmutex, push_handlers
[there is no need to cross-post the report, send it only to one of the
lists, preferrably dev]
Nick Tonkin wrote:
> Hi all,
>
> Using the very latest cvs sources, make test failed with the following:
re-arranging the report, to have error_log sections following the test
reports.
> apr/threadmutex..............FAILED tests 1-3
> Failed 3/3 tests, 0.00% okay
[...]
> [Sat Jan 18 21:23:17 2003] [error] [client 127.0.0.1] Can't locate
> APR/ThreadMutex.pm in @INC (@INC contains: /home/tmp/build/modperl-2.0/t
> /home/tmp/build/modperl-2.0/blib/lib/Apache2
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
it is in this directory, right?
[...]
> /home/tmp/build/modperl-2.0/t/response/TestAPR/threadmutex.pm line 17.
> error/push_handlers..........# Failed test 1 in error/push_handlers.t at
> line 14
> error/push_handlers..........FAILED test 1
> Failed 1/1 tests, 0.00% okay
[...]
> [Sat Jan 18 21:23:27 2003] [error] [client 127.0.0.1] File does not
exist: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
This is a new test I've added recently, unrelated to the original problem.
For some reason it wasn't auto-configured. Do you have a Location entry
for TestError::push_handlers in t/conf/httpd.conf? Does it appear when you
run t/TEST -conf?
__________________________________________________________________
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
Re: [mp2] make test errors w/. threadmutex, push_handlers
Posted by Stas Bekman <st...@stason.org>.
Andrew Wyllie wrote:
>>><Location /TestError::push_handlers>
>>> SetHandler modperl
>>> PerlResponseHandler TestError::push_handlers
>>></Location>
>>>
>>>
>>>>Does it appear when you
>>>>run t/TEST -conf?
>>>
>>>Nope:
>>>
>>>nick@fatboy /tmp/build/modperl-2.0>t/TEST -conf
>>>*** cleaning out current configuration
>>>*** reconfiguration done
>>>
>>>nick@fatboy /tmp/build/modperl-2.0>ll /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
>>>ls: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers: No such file or directory
>>
>>
>>I'm also seeing this test fail. The Location is in the
>>httpd.conf file, but it's not picking it up for some reason.
>
>
>
> I take it back, I uncommented the warn statements in
> TestError/push_handlers.pm and the first one "handler called"
> is printed into the log. If I change the line:
>
> $r->push_handlers(PerlResponseHandler => \&real_response);
> to
> $r->push_handlers(PerlResponseHandler => \&real_response($r));
Heh, you need to pass a callback, not execute it.
> the method real_response gets called (prints real_response called
> in log file), but, the test still does not pass.
>
> But, when I take out return Apache::DECLINED; and replace
> with return Apache::OK; the test passes.
>
> So, when you push a handler, is the cycle supposed to continue
> if one of the pushed handlers returns OK or is it supposed to
> stop as soon as it hits an OK? I would have thought that
> when the method being pushed returned Apache::OK, that I would
> never arrive at the Apache::DECLINED in the original handler.
As the name of the test indicates it tests something that you shouldn't be
doing. You can read the explanation at the top of
t/response/TestError/push_handlers.pm
The trick is that the first handler runs under 'modperl', the newly pushed
handler is run under 'perl-script' and on my setup, Apache runs the
'perl-script' handlers after it's finished trying 'modperl' handlers (if they
all have returned DECLINED).
I've added this test after a report to the list where the user have misused
push_handlers.
So if fails for you because it falls through to the default handler and
doesn't call the pushed handler. Dunno why is it different on FreeBSD, but
I'll disable it for 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
Re: [mp2] make test errors w/. threadmutex, push_handlers
Posted by Andrew Wyllie <wy...@dilex.net>.
On Sun, 19 Jan 2003, Nick Tonkin wrote:
> On Mon, 20 Jan 2003, Stas Bekman wrote:
...
>
> nick@fatboy /tmp/build/modperl-2.0>sudo find / -name 'ThreadMutex.pm' -print
> /home/tmp/build/modperl-2.0/WrapXS/APR/ThreadMutex/ThreadMutex.pm
>
I'm also running on FreeBSD and I'm seeing the same problem. On my
system I'm not getting a Makefile written in WrapXS/APR/ThreadMutex .
So the module is not being copied over into the test environment.
I'm not quite sure how to include this module in the make, I'm not
even sure if I should be using it if I have threads disabled (which
I do).
>
> > > error/push_handlers..........# Failed test 1 in error/push_handlers.t at
> > > line 14
> > > error/push_handlers..........FAILED test 1
> > > Failed 1/1 tests, 0.00% okay
> > [...]
> > > [Sat Jan 18 21:23:27 2003] [error] [client 127.0.0.1] File does not
> > exist: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
> >
> > This is a new test I've added recently, unrelated to the original problem.
> > For some reason it wasn't auto-configured. Do you have a Location entry
> > for TestError::push_handlers in t/conf/httpd.conf?i
>
> Yep:
>
> <Location /TestError::push_handlers>
> SetHandler modperl
> PerlResponseHandler TestError::push_handlers
> </Location>
>
>
> > Does it appear when you
> > run t/TEST -conf?
>
> Nope:
>
> nick@fatboy /tmp/build/modperl-2.0>t/TEST -conf
> *** cleaning out current configuration
> *** reconfiguration done
>
> nick@fatboy /tmp/build/modperl-2.0>ll /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
> ls: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers: No such file or directory
I'm also seeing this test fail. The Location is in the
httpd.conf file, but it's not picking it up for some reason.
andrew
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org
Re: [mp2] make test errors w/. threadmutex, push_handlers
Posted by Stas Bekman <st...@stason.org>.
Nick Tonkin wrote:
> Might I suggest the following messages instead:
Good input, Nick
> apr/threadmutex..............skipped
> test skipped: threads not installed or 'APR::ThreadMutex' not found
Now it'll say:
apr/threadmutex....1..0 # skipped: Apache/APR was built without threads support
> error/push_handlers..........skipped
> test skipped: still under development
>
> (is that what you meant in your earlier message?)
done that as well.
Thanks again.
__________________________________________________________________
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
Re: [mp2] make test errors w/. threadmutex, push_handlers
Posted by Nick Tonkin <ni...@rlnt.net>.
On Wed, 22 Jan 2003, Stas Bekman wrote:
> Nick Tonkin wrote:
>
> > But still:
> >
> > directive/setupenv...........ok
> > error/push_handlers..........# Failed test 1 in error/push_handlers.t at
> > line 14
> > error/push_handlers..........FAILED test 1
> > Failed 1/1 tests, 0.00% okay
> > filter/in_bbs_body...........ok
> >
> > and this in the test error log:
> >
> > [Tue Jan 21 08:03:18 2003] [error] [client 127.0.0.1] File does not exist: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
> > FILTER READ: 1024 bytes
> > [Tue Jan 21 08:03:26 2003] [error] [client 127.0.0.1] File does not exist: /home/tmp/build/modperl-2.0/t/htdocs/nope
> > [Tue Jan 21 08:03:32 2003] [error] [client 127.0.0.1] need AuthName: /TestModperl::setauth
> > [Tue Jan 21 08:03:35 2003] [info] removed PID file /home/tmp/build/modperl-2.0/t/logs/httpd.pid (pid=24418)
> > [Tue Jan 21 08:03:35 2003] [notice] caught SIGTERM, shutting down
> > END in modperl_extra.pl, pid=24418
>
> Did you update your cvs version?
No, I didn't. But now I did (got apache 2.1.0-dev by mistake!) and all
tests pass OK:
apr/table....................ok
apr/threadmutex..............skipped
all skipped: cannot find module 'APR::ThreadMutex'
apr/util.....................ok
directive/setupenv...........ok
error/push_handlers..........skipped
all skipped: ignore
filter/in_bbs_body...........ok
Might I suggest the following messages instead:
apr/threadmutex..............skipped
test skipped: threads not installed or 'APR::ThreadMutex' not found
error/push_handlers..........skipped
test skipped: still under development
(is that what you meant in your earlier message?)
- nick
~~~~~~~~~~~~~~~~~~~~
Nick Tonkin {|8^)>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org
Re: [mp2] make test errors w/. threadmutex, push_handlers
Posted by Stas Bekman <st...@stason.org>.
Nick Tonkin wrote:
> But still:
>
> directive/setupenv...........ok
> error/push_handlers..........# Failed test 1 in error/push_handlers.t at
> line 14
> error/push_handlers..........FAILED test 1
> Failed 1/1 tests, 0.00% okay
> filter/in_bbs_body...........ok
>
> and this in the test error log:
>
> [Tue Jan 21 08:03:18 2003] [error] [client 127.0.0.1] File does not exist: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
> FILTER READ: 1024 bytes
> [Tue Jan 21 08:03:26 2003] [error] [client 127.0.0.1] File does not exist: /home/tmp/build/modperl-2.0/t/htdocs/nope
> [Tue Jan 21 08:03:32 2003] [error] [client 127.0.0.1] need AuthName: /TestModperl::setauth
> [Tue Jan 21 08:03:35 2003] [info] removed PID file /home/tmp/build/modperl-2.0/t/logs/httpd.pid (pid=24418)
> [Tue Jan 21 08:03:35 2003] [notice] caught SIGTERM, shutting down
> END in modperl_extra.pl, pid=24418
Did you update your cvs version?
__________________________________________________________________
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
Re: [mp2] make test errors w/. threadmutex, push_handlers
Posted by Nick Tonkin <ni...@rlnt.net>.
On Tue, 21 Jan 2003, Stas Bekman wrote:
> Nick Tonkin wrote:
> > On Mon, 20 Jan 2003, Stas Bekman wrote:
> >
> >
> >>Nick Tonkin wrote:
> >>
> >>>>>apr/threadmutex..............FAILED tests 1-3
> >>>>> Failed 3/3 tests, 0.00% okay
> [...]
>
> Thanks Nick and Andrew for debugging on this one.
heh. Thank you all for fixing it!
> I was able to reproduce the
> problem by turning APR_HAS_THREADS off in apr.h and rebuilding mod_perl. It's
> OK that APR::ThreadMutex is not copied. The test wasn't doing the right
> checking, the following should fix it (committed to cvs):
>
> Index: t/response/TestAPR/threadmutex.pm
> ===================================================================
> RCS file: /home/cvs/modperl-2.0/t/response/TestAPR/threadmutex.pm,v
> retrieving revision 1.2
> diff -u -r1.2 threadmutex.pm
> --- t/response/TestAPR/threadmutex.pm 23 Jun 2002 22:14:26 -0000 1.2
> +++ t/response/TestAPR/threadmutex.pm 21 Jan 2003 06:51:47 -0000
> @@ -12,7 +12,7 @@
> sub handler {
> my $r = shift;
>
> - plan $r, tests => 3, 'APR::ThreadMutex';
> + plan $r, tests => 3, have 'APR::ThreadMutex';
>
> require APR::ThreadMutex;
Looks good:
apr/table....................ok
apr/threadmutex..............skipped
all skipped: cannot find module 'APR::ThreadMutex'
apr/util.....................ok
But still:
directive/setupenv...........ok
error/push_handlers..........# Failed test 1 in error/push_handlers.t at
line 14
error/push_handlers..........FAILED test 1
Failed 1/1 tests, 0.00% okay
filter/in_bbs_body...........ok
and this in the test error log:
[Tue Jan 21 08:03:18 2003] [error] [client 127.0.0.1] File does not exist: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
FILTER READ: 1024 bytes
[Tue Jan 21 08:03:26 2003] [error] [client 127.0.0.1] File does not exist: /home/tmp/build/modperl-2.0/t/htdocs/nope
[Tue Jan 21 08:03:32 2003] [error] [client 127.0.0.1] need AuthName: /TestModperl::setauth
[Tue Jan 21 08:03:35 2003] [info] removed PID file /home/tmp/build/modperl-2.0/t/logs/httpd.pid (pid=24418)
[Tue Jan 21 08:03:35 2003] [notice] caught SIGTERM, shutting down
END in modperl_extra.pl, pid=24418
- nick
~~~~~~~~~~~~~~~~~~~~
Nick Tonkin {|8^)>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org
Re: [mp2] make test errors w/. threadmutex, push_handlers
Posted by Stas Bekman <st...@stason.org>.
Nick Tonkin wrote:
> On Mon, 20 Jan 2003, Stas Bekman wrote:
>
>
>>Nick Tonkin wrote:
>>
>>>>>apr/threadmutex..............FAILED tests 1-3
>>>>> Failed 3/3 tests, 0.00% okay
[...]
Thanks Nick and Andrew for debugging on this one. I was able to reproduce the
problem by turning APR_HAS_THREADS off in apr.h and rebuilding mod_perl. It's
OK that APR::ThreadMutex is not copied. The test wasn't doing the right
checking, the following should fix it (committed to cvs):
Index: t/response/TestAPR/threadmutex.pm
===================================================================
RCS file: /home/cvs/modperl-2.0/t/response/TestAPR/threadmutex.pm,v
retrieving revision 1.2
diff -u -r1.2 threadmutex.pm
--- t/response/TestAPR/threadmutex.pm 23 Jun 2002 22:14:26 -0000 1.2
+++ t/response/TestAPR/threadmutex.pm 21 Jan 2003 06:51:47 -0000
@@ -12,7 +12,7 @@
sub handler {
my $r = shift;
- plan $r, tests => 3, 'APR::ThreadMutex';
+ plan $r, tests => 3, have 'APR::ThreadMutex';
require APR::ThreadMutex;
__________________________________________________________________
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
Re: [mp2] make test errors w/. threadmutex, push_handlers
Posted by Nick Tonkin <ni...@rlnt.net>.
On Mon, 20 Jan 2003, Stas Bekman wrote:
> Nick Tonkin wrote:
> >>>apr/threadmutex..............FAILED tests 1-3
> >>> Failed 3/3 tests, 0.00% okay
> >>
> >>[...]
> >> > [Sat Jan 18 21:23:17 2003] [error] [client 127.0.0.1] Can't locate
> >> > APR/ThreadMutex.pm in @INC (@INC contains: /home/tmp/build/modperl-2.0/t
> >> > /home/tmp/build/modperl-2.0/blib/lib/Apache2
> >> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> >>it is in this directory, right?
> >
> >
> > Nope:
> >
> > nick@fatboy /tmp/build/modperl-2.0>sudo find / -name 'ThreadMutex.pm' -print
> > /home/tmp/build/modperl-2.0/WrapXS/APR/ThreadMutex/ThreadMutex.pm
>
> So you don't have APR/ThreadMutex.pm in blib and the error was correct.
>
> And what's your WrapXS/APR/ThreadMutex/Makefile's pm_to_blib target says?
> Mine says:
> pm_to_blib: $(TO_INST_PM)
> @$(PERLRUNINST) "-MExtUtils::Install" \
> -e "pm_to_blib({qw{ThreadMutex.pm
> ../../../blib/lib/Apache2/APR/ThreadMute
> x.pm}},'$(INST_LIB)/auto','$(PM_FILTER)')"
> @$(TOUCH) $@
Um, not sure what you meant. There is no Makefile in that directory, only
Makefile.PL:
nick@fatboy /tmp/build/modperl-2.0/WrapXS/APR/ThreadMutex>cat Makefile.PL | grep -v '#'
use ModPerl::MM ();
ModPerl::MM::WriteMakefile(
'NAME' => 'APR::ThreadMutex',
'VERSION' => '0.01',
'depend' => {
'ThreadMutex.c' => '/home/tmp/build/modperl-2.0/xs/APR/ThreadMutex/APR__ThreadMutex.h'
}
,
);
So I did this:
nick@fatboy /tmp/build/modperl-2.0/WrapXS/APR/ThreadMutex>perl Makefile.PL
!!! '/usr/local/apache/bin/apxs -q INCLUDEDIR' failed:
!!! unknown error
Writing Makefile for APR::ThreadMutex
Then in Makefile I have:
# --- MakeMaker pm_to_blib section:
pm_to_blib: $(TO_INST_PM)
@$(PERLRUNINST) "-MExtUtils::Install" \
-e "pm_to_blib({qw{}},'$(INST_LIB)/auto','$(PM_FILTER)')"
@$(TOUCH) $@
>
> Also I get:
>
> % grep HAS_THREADS lib/Apache/BuildConfig.pm
>
> 'HAS_THREADS' => '1',
>
> you probably have 0, right?
nick@fatboy /tmp/build/modperl-2.0>grep HAS_THREADS lib/Apache/BuildConfig.pm
'HAS_THREADS' => '0',
> If so:
>
> Also, I'm not sure why an undef is returned here, I'd think it should be:
>
> Index: lib/ModPerl/MM.pm
> ===================================================================
> RCS file: /home/cvs/modperl-2.0/lib/ModPerl/MM.pm,v
> retrieving revision 1.21
> diff -u -r1.21 MM.pm
> --- lib/ModPerl/MM.pm 23 Jun 2002 21:46:54 -0000 1.21
> +++ lib/ModPerl/MM.pm 20 Jan 2003 05:06:53 -0000
> @@ -178,7 +178,7 @@
> my $apr_config = build_config()->get_apr_config();
>
> if ($path =~ m/(Thread|Global)Mutex/) {
> - return unless $apr_config->{HAS_THREADS};
> + return '' unless $apr_config->{HAS_THREADS};
> }
>
> return '' if $path =~ m/\.(pl|cvsignore)$/;
>
I made this change, compiled again, but got the same errors,
>
>
> >>>error/push_handlers..........# Failed test 1 in error/push_handlers.t at
> >>>line 14
> >>>error/push_handlers..........FAILED test 1
> >>> Failed 1/1 tests, 0.00% okay
> >>
> >>[...]
> >> > [Sat Jan 18 21:23:27 2003] [error] [client 127.0.0.1] File does not
> >>exist: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
> >>
> >>This is a new test I've added recently, unrelated to the original problem.
> >>For some reason it wasn't auto-configured. Do you have a Location entry
> >>for TestError::push_handlers in t/conf/httpd.conf?i
> >
> >
> > Yep:
> >
> > <Location /TestError::push_handlers>
> > SetHandler modperl
> > PerlResponseHandler TestError::push_handlers
> > </Location>
> >
> >
> >>Does it appear when you
> >>run t/TEST -conf?
> >
> >
> > Nope:
> >
> > nick@fatboy /tmp/build/modperl-2.0>t/TEST -conf
> > *** cleaning out current configuration
> > *** reconfiguration done
> >
> > nick@fatboy /tmp/build/modperl-2.0>ll /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
> > ls: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers: No such file or directory
>
> Of course the file doesn't exist, it's a location target. What happens if
> you run this test:
>
> t/TEST -v error/push_handlers
no change:
nick@fatboy /tmp/build/modperl-2.0>t/TEST -v error/push_handlers
/usr/local/apache/bin/httpd -d /home/tmp/build/modperl-2.0/t -f
/home/tmp/build/modperl-2.0/t/conf/httpd.conf -DAPACHE2
using Apache/2.0.43 (prefork MPM)
waiting for server to start: .[Mon Jan 20 06:28:51 2003] [info] 18
Apache:: modules loaded
[Mon Jan 20 06:28:51 2003] [info] 3 APR:: modules loaded
[Mon Jan 20 06:28:51 2003] [info] base server + 7 vhosts ready to run
tests
.
waiting for server to start: ok (waited 1 secs)
server localhost.rlnt.net:8529 started
server localhost.rlnt.net:8530 listening (TestProtocol::echo)
server localhost.rlnt.net:8531 listening (TestProtocol::echo_filter)
server localhost.rlnt.net:8532 listening (TestProtocol::eliza)
server localhost.rlnt.net:8533 listening (TestFilter::in_bbs_msg)
server localhost.rlnt.net:8534 listening (TestFilter::in_str_msg)
server localhost.rlnt.net:8535 listening (TestDirective::perlmodule)
server localhost.rlnt.net:8536 listening (TestDirective::perlrequire)
server localhost.rlnt.net:8537 listening (TestDirective::perlloadmodule3)
server localhost.rlnt.net:8538 listening (TestDirective::perlloadmodule4)
server localhost.rlnt.net:8539 listening (TestDirective::perlloadmodule5)
server localhost.rlnt.net:8540 listening (TestDirective::perlloadmodule6)
error/push_handlers....1..1
# expected: 'ok'
# Failed test 1 in error/push_handlers.t at line 14
# received: '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
# <html><head>
# <title>404 Not Found</title>
# </head><body>
# <h1>Not Found</h1>
# <p>The requested URL /TestError::push_handlers was not found on this
server.</p>
# </body></html>
# '
not ok 1
FAILED test 1
Failed 1/1 tests, 0.00% okay
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
error/push_handlers.t 1 1 100.00% 1
*** server localhost.rlnt.net:8529 shutdown
!!! error running tests (please examine t/logs/error_log)
nick@fatboy /tmp/build/modperl-2.0>more t/logs/error_log
[Mon Jan 20 06:28:51 2003] [info] Init: Initializing OpenSSL library
[Mon Jan 20 06:28:51 2003] [info] Init: Seeding PRNG with 0 bytes of
entropy
[Mon Jan 20 06:28:51 2003] [info] Init: Generating temporary RSA private
keys (512/1024 bits)
[Mon Jan 20 06:28:52 2003] [info] Init: Generating temporary DH parameters
(512/1024 bits)
[Mon Jan 20 06:28:52 2003] [warn] Init: Session Cache is not configured
[hint: SSLSessionCache]
[Mon Jan 20 06:28:52 2003] [info] Init: Initializing (virtual) servers for
SSL
[Mon Jan 20 06:28:52 2003] [info] Server: Apache/2.0.43,
Interface: mod_ssl/2.0.43, Library: OpenSSL/0.9.6g
END in modperl_extra.pl, pid=17843
[Mon Jan 20 06:28:52 2003] [info] Init: Initializing OpenSSL library
[Mon Jan 20 06:28:52 2003] [info] Init: Seeding PRNG with 0 bytes of
entropy
[Mon Jan 20 06:28:52 2003] [info] Init: Generating temporary RSA private
keys (512/1024 bits)
[Mon Jan 20 06:28:52 2003] [info] Init: Generating temporary DH parameters
(512/1024 bits)
[Mon Jan 20 06:28:52 2003] [info] Init: Initializing (virtual) servers for
SSL
[Mon Jan 20 06:28:52 2003] [info] Server: Apache/2.0.43,
Interface: mod_ssl/2.0.43, Library: OpenSSL/0.9.6g
[Mon Jan 20 06:28:52 2003] [notice] Apache/2.0.43
(Unix) mod_perl/1.99_09-dev Perl/v5.8.0 mod_ssl/2.0.43 OpenSSL/0.9.6
g configured -- resuming normal operations
[Mon Jan 20 06:28:52 2003] [info] Server built: Jan 17 2003 19:14:32
[Mon Jan 20 06:28:52 2003] [debug] prefork.c(1039): AcceptMutex: flock
(default: flock)
[Mon Jan 20 06:28:53 2003] [error] server reached MaxClients setting,
consider raising the MaxClients setting
[Mon Jan 20 06:28:53 2003] [error] [client 127.0.0.1] File does not
exist: /home/tmp/build/modperl-2.0/t/htdocs/TestEr
ror::push_handlers
[Mon Jan 20 06:28:54 2003] [info] removed PID file
/home/tmp/build/modperl-2.0/t/logs/httpd.pid (pid=17844)
[Mon Jan 20 06:28:54 2003] [notice] caught SIGTERM, shutting down
END in modperl_extra.pl, pid=17844
- nick
~~~~~~~~~~~~~~~~~~~~
Nick Tonkin {|8^)>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org
Re: [mp2] make test errors w/. threadmutex, push_handlers
Posted by Stas Bekman <st...@stason.org>.
Nick Tonkin wrote:
> BTW how many adopters of mp2 are we?
Just a few folks so far very reporting problems. Though it's possible that
there are many others that don't have problems.
>>>apr/threadmutex..............FAILED tests 1-3
>>> Failed 3/3 tests, 0.00% okay
>>
>>[...]
>> > [Sat Jan 18 21:23:17 2003] [error] [client 127.0.0.1] Can't locate
>> > APR/ThreadMutex.pm in @INC (@INC contains: /home/tmp/build/modperl-2.0/t
>> > /home/tmp/build/modperl-2.0/blib/lib/Apache2
>> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>>it is in this directory, right?
>
>
> Nope:
>
> nick@fatboy /tmp/build/modperl-2.0>ll /home/tmp/build/modperl-2.0/blib/lib/Apache2
> total 24
> drwxr-xr-x 2 nick perl - 512 Jan 18 21:22 APR/
> -r--r--r-- 1 nick perl - 325 Sep 12 2001 APR.pm
> drwxr-xr-x 2 nick perl - 1024 Jan 18 21:22 Apache/
> drwxr-xr-x 2 nick perl - 512 Jan 18 21:22 ModPerl/
> drwxr-xr-x 6 nick perl - 512 Jan 18 21:22 auto/
> -r--r--r-- 1 nick perl - 94 Jan 10 20:17 mod_perl.pm
> -r--r--r-- 1 nick perl - 11231 Jan 18 21:21 typemap
>
> nick@fatboy /tmp/build/modperl-2.0>ll
> /home/tmp/build/modperl-2.0/blib/lib/Apache2/APR
> total 34
> -r--r--r-- 1 nick perl - 537 Jan 18 21:21 Base64.pm
> -r--r--r-- 1 nick perl - 538 Jan 18 21:21 Brigade.pm
> -r--r--r-- 1 nick perl - 537 Jan 18 21:21 Bucket.pm
> -r--r--r-- 1 nick perl - 160 Apr 11 2001 Const.pm
> -r--r--r-- 1 nick perl - 535 Jan 18 21:21 Date.pm
> -r--r--r-- 1 nick perl - 537 Jan 18 21:21 NetLib.pm
> -r--r--r-- 1 nick perl - 533 Jan 18 21:21 OS.pm
> -r--r--r-- 1 nick perl - 191 Dec 17 2001 PerlIO.pm
> -r--r--r-- 1 nick perl - 535 Jan 18 21:21 Pool.pm
> -r--r--r-- 1 nick perl - 539 Jan 18 21:21 SockAddr.pm
> -r--r--r-- 1 nick perl - 537 Jan 18 21:21 Socket.pm
> -r--r--r-- 1 nick perl - 537 Jan 18 21:21 String.pm
> -r--r--r-- 1 nick perl - 536 Jan 18 21:21 Table.pm
> -r--r--r-- 1 nick perl - 534 Jan 18 21:21 URI.pm
> -r--r--r-- 1 nick perl - 535 Jan 18 21:21 UUID.pm
> -r--r--r-- 1 nick perl - 535 Jan 18 21:21 Util.pm
> -r--r--r-- 1 nick perl - 248 May 23 2002 XSLoader.pm
>
>
> nick@fatboy /tmp/build/modperl-2.0>sudo find / -name 'ThreadMutex.pm' -print
> /home/tmp/build/modperl-2.0/WrapXS/APR/ThreadMutex/ThreadMutex.pm
So you don't have APR/ThreadMutex.pm in blib and the error was correct.
And what's your WrapXS/APR/ThreadMutex/Makefile's pm_to_blib target says?
Mine says:
pm_to_blib: $(TO_INST_PM)
@$(PERLRUNINST) "-MExtUtils::Install" \
-e "pm_to_blib({qw{ThreadMutex.pm
../../../blib/lib/Apache2/APR/ThreadMute
x.pm}},'$(INST_LIB)/auto','$(PM_FILTER)')"
@$(TOUCH) $@
Also I get:
% grep HAS_THREADS lib/Apache/BuildConfig.pm
'HAS_THREADS' => '1',
you probably have 0, right? If so:
Also, I'm not sure why an undef is returned here, I'd think it should be:
Index: lib/ModPerl/MM.pm
===================================================================
RCS file: /home/cvs/modperl-2.0/lib/ModPerl/MM.pm,v
retrieving revision 1.21
diff -u -r1.21 MM.pm
--- lib/ModPerl/MM.pm 23 Jun 2002 21:46:54 -0000 1.21
+++ lib/ModPerl/MM.pm 20 Jan 2003 05:06:53 -0000
@@ -178,7 +178,7 @@
my $apr_config = build_config()->get_apr_config();
if ($path =~ m/(Thread|Global)Mutex/) {
- return unless $apr_config->{HAS_THREADS};
+ return '' unless $apr_config->{HAS_THREADS};
}
return '' if $path =~ m/\.(pl|cvsignore)$/;
>>>error/push_handlers..........# Failed test 1 in error/push_handlers.t at
>>>line 14
>>>error/push_handlers..........FAILED test 1
>>> Failed 1/1 tests, 0.00% okay
>>
>>[...]
>> > [Sat Jan 18 21:23:27 2003] [error] [client 127.0.0.1] File does not
>>exist: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
>>
>>This is a new test I've added recently, unrelated to the original problem.
>>For some reason it wasn't auto-configured. Do you have a Location entry
>>for TestError::push_handlers in t/conf/httpd.conf?i
>
>
> Yep:
>
> <Location /TestError::push_handlers>
> SetHandler modperl
> PerlResponseHandler TestError::push_handlers
> </Location>
>
>
>>Does it appear when you
>>run t/TEST -conf?
>
>
> Nope:
>
> nick@fatboy /tmp/build/modperl-2.0>t/TEST -conf
> *** cleaning out current configuration
> *** reconfiguration done
>
> nick@fatboy /tmp/build/modperl-2.0>ll /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
> ls: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers: No such file or directory
Of course the file doesn't exist, it's a location target. What happens if
you run this test:
t/TEST -v error/push_handlers
__________________________________________________________________
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
Re: [mp2] make test errors w/. threadmutex, push_handlers
Posted by Nick Tonkin <ni...@rlnt.net>.
On Mon, 20 Jan 2003, Stas Bekman wrote:
> [there is no need to cross-post the report, send it only to one of the
> lists, preferrably dev]
Alright. I thought it should be archived on the modperl list too.
BTW how many adopters of mp2 are we?
> > apr/threadmutex..............FAILED tests 1-3
> > Failed 3/3 tests, 0.00% okay
> [...]
> > [Sat Jan 18 21:23:17 2003] [error] [client 127.0.0.1] Can't locate
> > APR/ThreadMutex.pm in @INC (@INC contains: /home/tmp/build/modperl-2.0/t
> > /home/tmp/build/modperl-2.0/blib/lib/Apache2
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> it is in this directory, right?
Nope:
nick@fatboy /tmp/build/modperl-2.0>ll /home/tmp/build/modperl-2.0/blib/lib/Apache2
total 24
drwxr-xr-x 2 nick perl - 512 Jan 18 21:22 APR/
-r--r--r-- 1 nick perl - 325 Sep 12 2001 APR.pm
drwxr-xr-x 2 nick perl - 1024 Jan 18 21:22 Apache/
drwxr-xr-x 2 nick perl - 512 Jan 18 21:22 ModPerl/
drwxr-xr-x 6 nick perl - 512 Jan 18 21:22 auto/
-r--r--r-- 1 nick perl - 94 Jan 10 20:17 mod_perl.pm
-r--r--r-- 1 nick perl - 11231 Jan 18 21:21 typemap
nick@fatboy /tmp/build/modperl-2.0>ll
/home/tmp/build/modperl-2.0/blib/lib/Apache2/APR
total 34
-r--r--r-- 1 nick perl - 537 Jan 18 21:21 Base64.pm
-r--r--r-- 1 nick perl - 538 Jan 18 21:21 Brigade.pm
-r--r--r-- 1 nick perl - 537 Jan 18 21:21 Bucket.pm
-r--r--r-- 1 nick perl - 160 Apr 11 2001 Const.pm
-r--r--r-- 1 nick perl - 535 Jan 18 21:21 Date.pm
-r--r--r-- 1 nick perl - 537 Jan 18 21:21 NetLib.pm
-r--r--r-- 1 nick perl - 533 Jan 18 21:21 OS.pm
-r--r--r-- 1 nick perl - 191 Dec 17 2001 PerlIO.pm
-r--r--r-- 1 nick perl - 535 Jan 18 21:21 Pool.pm
-r--r--r-- 1 nick perl - 539 Jan 18 21:21 SockAddr.pm
-r--r--r-- 1 nick perl - 537 Jan 18 21:21 Socket.pm
-r--r--r-- 1 nick perl - 537 Jan 18 21:21 String.pm
-r--r--r-- 1 nick perl - 536 Jan 18 21:21 Table.pm
-r--r--r-- 1 nick perl - 534 Jan 18 21:21 URI.pm
-r--r--r-- 1 nick perl - 535 Jan 18 21:21 UUID.pm
-r--r--r-- 1 nick perl - 535 Jan 18 21:21 Util.pm
-r--r--r-- 1 nick perl - 248 May 23 2002 XSLoader.pm
nick@fatboy /tmp/build/modperl-2.0>sudo find / -name 'ThreadMutex.pm' -print
/home/tmp/build/modperl-2.0/WrapXS/APR/ThreadMutex/ThreadMutex.pm
> > error/push_handlers..........# Failed test 1 in error/push_handlers.t at
> > line 14
> > error/push_handlers..........FAILED test 1
> > Failed 1/1 tests, 0.00% okay
> [...]
> > [Sat Jan 18 21:23:27 2003] [error] [client 127.0.0.1] File does not
> exist: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
>
> This is a new test I've added recently, unrelated to the original problem.
> For some reason it wasn't auto-configured. Do you have a Location entry
> for TestError::push_handlers in t/conf/httpd.conf?i
Yep:
<Location /TestError::push_handlers>
SetHandler modperl
PerlResponseHandler TestError::push_handlers
</Location>
> Does it appear when you
> run t/TEST -conf?
Nope:
nick@fatboy /tmp/build/modperl-2.0>t/TEST -conf
*** cleaning out current configuration
*** reconfiguration done
nick@fatboy /tmp/build/modperl-2.0>ll /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers
ls: /home/tmp/build/modperl-2.0/t/htdocs/TestError::push_handlers: No such file or directory
- nick
~~~~~~~~~~~~~~~~~~~~
Nick Tonkin {|8^)>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org