Stas Bekman <[EMAIL PROTECTED]> writes:
modperl-2.0 'make test' running under worker mpm (linux) always fails in t/filter/both_str_req_add.t and dumps core:
Why does that test fail all by itself, using this patch?
Index: t/filter/TestFilter/both_str_req_add.pm
===================================================================
RCS file: /home/cvs/modperl-2.0/t/filter/TestFilter/both_str_req_add.pm,v
retrieving revision 1.4
diff -u -r1.4 both_str_req_add.pm
--- t/filter/TestFilter/both_str_req_add.pm 9 Feb 2004 19:32:42 -0000 1.4
+++ t/filter/TestFilter/both_str_req_add.pm 4 Oct 2004 06:24:40 -0000
@@ -8,7 +8,7 @@
use Apache::RequestRec ();
use Apache::RequestIO ();
-
+use B::Deparse ();
use Apache::Filter ();
use Apache::Const -compile => qw(OK M_POST);
With that patch, I get this in the error log:
[Mon Oct 04 02:26:20 2004] [error] [client 127.0.0.1] Can't locate
object method "PVX" via package "B::NULL" at /home/smoke/lib/perl5/5.8.5/x86_64-linux-thread-multi/B/Deparse.pm line 1288.
Without that patch, the test passes when run individually, but often
segfaults for me in the test suite. Running the server under gdb indicates the segfault is happening during loading of B::Deparse on
this line in the test-
$r->add_output_filter("out_filter");
And if you add it at the startup, it happens too. I think it tries to deparse out_filter as a code string, instead of trying to get the code reference.
[Mon Oct 04 17:49:15 2004] [error] [client 127.0.0.1] Can't locate object method "PVX" via package "B::NULL" at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 1287.
at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 1287
B::Deparse::populate_curcvlex('B::Deparse=HASH(0xa277e40)') called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 1259
B::Deparse::lex_in_scope('B::Deparse=HASH(0xa277e40)', '@_') called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 1253
B::Deparse::stash_variable('B::Deparse=HASH(0xa277e40)', '@', '_') called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 2718
B::Deparse::rv2x('B::Deparse=HASH(0xa277e40)', 'B::UNOP=SCALAR(0xa27a00c)', 16, '@') called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 2794
B::Deparse::pp_rv2av('B::Deparse=HASH(0xa277e40)', 'B::UNOP=SCALAR(0xa27a00c)', 16) called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 791
B::Deparse::deparse('B::Deparse=HASH(0xa277e40)', 'B::UNOP=SCALAR(0xa27a00c)', 16) called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 982
B::Deparse::maybe_parens_unop('B::Deparse=HASH(0xa277e40)', 'shift', 'B::UNOP=SCALAR(0xa27a00c)', 7) called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 1548
B::Deparse::unop('B::Deparse=HASH(0xa277e40)', 'B::UNOP=SCALAR(0xa279dfc)', 7, 'shift') called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 1584
B::Deparse::pp_shift('B::Deparse=HASH(0xa277e40)', 'B::UNOP=SCALAR(0xa279dfc)', 7) called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 791
B::Deparse::deparse('B::Deparse=HASH(0xa277e40)', 'B::UNOP=SCALAR(0xa279dfc)', 7) called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 1941
B::Deparse::deparse_binop_right('B::Deparse=HASH(0xa277e40)', 'B::BINOP=SCALAR(0x8d7cc38)', 'B::UNOP=SCALAR(0xa279dfc)', 7) called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 1961
B::Deparse::binop('B::Deparse=HASH(0xa277e40)', 'B::BINOP=SCALAR(0x8d7cc38)', 0.5, '=', 7, 1) called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 2006
B::Deparse::pp_sassign('B::Deparse=HASH(0xa277e40)', 'B::BINOP=SCALAR(0x8d7cc38)', 0.5) called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 791
B::Deparse::deparse('B::Deparse=HASH(0xa277e40)', 'B::BINOP=SCALAR(0x8d7cc38)', 0.5) called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 1121
B::Deparse::lineseq('B::Deparse=HASH(0xa277e40)', 'undef', 'B::COP=SCALAR(0x8d7cbd8)', 'B::BINOP=SCALAR(0x8d7cc38)', 'B::COP=SCALAR(0x8d7cc80)', 'B::BINOP=SCALAR(0x8d7cc98)', 'B::COP=SCALAR(0x8d7ccb0)', 'B::LISTOP=SCALAR(0x8d7ccc8)') called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 851
B::Deparse::deparse_sub('B::Deparse=HASH(0xa277e40)', 'B::CV=SCALAR(0xa25e924)') called at /home/stas/perl/5.8.5-ithread/lib/5.8.5/i686-linux-thread-multi/B/Deparse.pm line 676
B::Deparse::coderef2text('B::Deparse=HASH(0xa277e40)', 'CODE(0x8a952f4)') called at /home/stas/apache.org/mp2-pool/t/filter/TestFilter/both_str_req_add.pm line 35
TestFilter::both_str_req_add::header_parser('Apache::RequestRec=SCALAR(0x93e865c)') called at -e line 0
eval {...} called at -e line 0
-- __________________________________________________________________ Stas Bekman JAm_pH ------> Just Another mod_perl Hacker http://stason.org/ mod_perl Guide ---> http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]