Here's some output from strace on Linux
Apache 1.13.19 with mod_perl 1.24 and perl 5.6.0
=
04:48:26 stat64(/proj/Web/EMIS/Mason/live/redirect, {st_mode=S_IFREG|0775,
st_size=243, ...}) = 0
04:48:26 stat64(/proj/Web/EMIS/Mason/obj/live/redirect, {st_mode=S_IFREG|0644,
st_size=902, ...})
= 0
04:48:26 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
04:48:26 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
04:48:26 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
04:48:26 --- SIGSEGV (Segmentation fault) ---
04:48:26 chdir(/etc/httpd/core) = 0
04:48:26 rt_sigaction(SIGSEGV, {SIG_DFL}, {SIG_DFL}, 8) = 0
04:48:26 getpid() = 5320
04:48:26 kill(5320, SIGSEGV)= 0
04:48:26 sigreturn()= ? (mask now [])
04:48:26 --- SIGSEGV (Segmentation fault) ---
==
Here's redirect Mason component.
%init
#$r-status(200);
$r-header_out(Location=$url);
# Do this so Apache doesn't try to re-read post data
$r-method('GET');
$r-headers_in-unset('Content-length');
# Exit with 302 status
$m-abort(302);
/%init
%args
$url
/%args
===
Looks like the problem is caused by 'abort'. I did not do much digging yet but looks
like
abort calls 'croak'. Unrelational to segv we expirienced strange
Bizzare copy of ARRAY in aassign in Carp/Heavy.pm line 79 messages at random instead
of display
of nice stack trace.
Could it be some perl5.6.0 bug?
Andrei