On Wednesday, January 4, 2012 at 11:26 AM, Torsten Förtsch wrote: > Don't know if it is just my system or if it is relevant at all but I can > produce failures and even segfault by > > make > t/TEST -start-httpd > while t/TEST -order=random -run-tests; do :; done > > Can anyone else please try this? Also, I wouldn't see it as a show stopper if > > 1.36 behaves the same.
I was not able to reproduce this after letting it run for ~20 minutes. 5.14.1/2.2.21/2.0.6-dev > > Note, the first run of the test suite always succeeds. > > The stack trace shows that PerlIOApache_flush passes a NULL pointer to > ap_get_module_config. I think the relevant line is > > rcfg = modperl_config_req_get(st->r); > > which expands to > > ap_get_module_config(st->r->request_config, &perl_module) > > I also got one of this: > > [Wed Jan 04 19:19:29 2012] [error] [client 127.0.0.1] PerlIOApache_flush: > flush can't be called before the response phase at > /opt/perl/lib/5.12.3/Test/Builder.pm line 1825.\n > > 1818 sub _open_testhandles { > 1819 my $self = shift; > 1820 > 1821 return if $self->{Opened_Testhandles}; > 1822 > 1823 # We dup STDOUT and STDERR so people can change them in their > 1824 # test suites while still getting normal test output. > 1825 open( $Testout, ">&STDOUT" ) or die "Can't dup STDOUT: $!"; > 1826 open( $Testerr, ">&STDERR" ) or die "Can't dup STDERR: $!"; > 1827 > 1828 # $self->_copy_io_layers( \*STDOUT, $Testout ); > 1829 # $self->_copy_io_layers( \*STDERR, $Testerr ); > 1830 > 1831 $self->{Opened_Testhandles} = 1; > 1832 > 1833 return; > 1834 } > > To me the stack trace looks like a file handle being closed in the process of > > reopening it - something like what is done in line 1825 if $Testout is still > open. > > > #0 0x000000000042cfb4 in ap_get_module_config (cv=0x0, m=0x7fa62e910de0) at > util_debug.c:106 > 106 return ((void **)cv)[m->module_index]; > (gdb) bt > #0 0x000000000042cfb4 in ap_get_module_config (cv=0x0, m=0x7fa62e910de0) at > util_debug.c:106 > #1 0x00007fa62e6f6386 in PerlIOApache_flush () from /opt/apache- > prefork/libexec/mod_perl.so > #2 0x00007fa62e48f6be in Perl_PerlIO_flush () from > /opt/perl/lib/5.12.3/x86_64-linux/CORE/libperl.so > #3 0x00007fa62e491559 in PerlIOBase_close () from > /opt/perl/lib/5.12.3/x86_64-linux/CORE/libperl.so > #4 0x00007fa62e6f6209 in PerlIOApache_close () from /opt/apache- > prefork/libexec/mod_perl.so > #5 0x00007fa62e491678 in PerlIO__close () from /opt/perl/lib/5.12.3/x86_64- > linux/CORE/libperl.so > #6 0x00007fa62e4916be in Perl_PerlIO_close () from > /opt/perl/lib/5.12.3/x86_64-linux/CORE/libperl.so > #7 0x00007fa62e471624 in Perl_do_openn () from /opt/perl/lib/5.12.3/x86_64- > linux/CORE/libperl.so > #8 0x00007fa62e45e296 in Perl_pp_open () from /opt/perl/lib/5.12.3/x86_64- > linux/CORE/libperl.so > #9 0x00007fa62e41dc80 in Perl_runops_standard () from > /opt/perl/lib/5.12.3/x86_64-linux/CORE/libperl.so > #10 0x00007fa62e3ca1ab in Perl_call_sv () from /opt/perl/lib/5.12.3/x86_64- > linux/CORE/libperl.so > #11 0x00007fa62e6f1cf7 in modperl_callback () from /opt/apache- > prefork/libexec/mod_perl.so > #12 0x00007fa62e6f2540 in modperl_callback_run_handlers () from /opt/apache- > prefork/libexec/mod_perl.so > #13 0x00007fa62e6f288f in modperl_callback_per_dir () from /opt/apache- > prefork/libexec/mod_perl.so > #14 0x00007fa62e6eea5b in modperl_response_handler_run () from /opt/apache- > prefork/libexec/mod_perl.so > #15 0x00007fa62e6eebb3 in modperl_response_handler_cgi () from /opt/apache- > prefork/libexec/mod_perl.so > #16 0x000000000043cc98 in ap_run_handler (r=0x9f53c0) at config.c:158 > #17 0x000000000043d0fe in ap_invoke_handler (r=0x9f53c0) at config.c:376 > #18 0x000000000044a150 in ap_process_request (r=0x9f53c0) at > http_request.c:282 > #19 0x0000000000447128 in ap_process_http_connection (c=0x9e7540) at > http_core.c:190 > #20 0x0000000000443298 in ap_run_process_connection (c=0x9e7540) at > connection.c:43 > #21 0x000000000044ee02 in child_main (child_num_arg=<optimized out>) at > prefork.c:667 > #22 0x000000000044f50c in make_child (slot=1, s=0x684848) at prefork.c:768 > #23 make_child (s=0x684848, slot=1) at prefork.c:696 > #24 0x0000000000450062 in perform_idle_server_maintenance (p=<optimized out>) > > at prefork.c:903 > #25 ap_mpm_run (_pconf=<optimized out>, plog=<optimized out>, s=<optimized > out>) at prefork.c:1107 > #26 0x00000000004286d4 in main (argc=7, argv=0x7fffceabde38) at main.c:751 > > > Torsten Förtsch > > -- > Need professional modperl support? Hire me! (http://foertsch.name) > > Like fantasy? http://kabatinte.net --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@perl.apache.org For additional commands, e-mail: dev-h...@perl.apache.org