Title: Core dumping
Sorry I forgot to include the stack trace with debugging turned on:
 
#0  0x81714f7 in Perl_dounwind (cxix=3) at pp_ctl.c:1254
#1  0x8171bd1 in Perl_die_where (
    message=0x848eb68 "Can't upgrade that kind of scalar at /home/shane/sparty/runt
ime/perl/lib/site_perl/5.6.0/HTML/Mason/ApacheHandler.pm line 547.\n", msglen=127)
    at pp_ctl.c:1371
#2  0x81289f3 in Perl_vcroak (pat=0x81cc200 "Can't upgrade that kind of scalar",
    args=0xbffff284) at util.c:1623
#3  0x8128ad1 in Perl_croak (pat=0x81cc200 "Can't upgrade that kind of scalar")
    at util.c:1670
#4  0x814317a in Perl_sv_upgrade (sv=0x81eff50, mt=13) at sv.c:916
#5  0x80e5ef0 in Perl_gv_init (gv=0x81eff50, stash=0x81efed8, name=0x81accb6 "_",
    len=1, multi=0) at gv.c:93
#6  0x80e76c3 in Perl_gv_fetchpv (nambeg=0x81accb6 "_", add=1, sv_type=15)
    at gv.c:681
#7  0x80894de in XS_Apache_finfo (cv=0x8207410) at Apache.xs:1844
#8  0x8140fc5 in Perl_pp_entersub () at pp_hot.c:2533
#9  0x813891a in Perl_runops_debug () at run.c:56
#10 0x80e256f in S_call_body (myop=0xbffff6f8, is_eval=0) at perl.c:1761
#11 0x80e21c0 in perl_call_sv (sv=0x85d1ee8, flags=4) at perl.c:1677
#12 0x807474c in perl_call_handler (sv=0x85d1ee8, r=0x86d227c, args=0x0)
    at mod_perl.c:1643
#13 0x8073e7a in perl_run_stacked_handlers (hook=0x81aa2b9 "PerlHandler",
    r=0x86d227c, handlers=0x85d7d80) at mod_perl.c:1362
#14 0x8072011 in perl_handler (r=0x86d227c) at mod_perl.c:905
#15 0x809e353 in ap_invoke_handler ()
#16 0x80b1969 in process_request_internal ()
#17 0x80b19cc in ap_process_request ()
#18 0x80a926e in child_main ()
#19 0x80a93fc in make_child ()
#20 0x80a9559 in startup_children ()
#21 0x80a9b86 in standalone_main ()
#22 0x80aa313 in main ()
#23 0x400d31eb in __libc_start_main (main=0x80a9fcc <main>, argc=2,
    argv=0xbffff944, init=0x8062820 <_init>, fini=0x81a73cc <_fini>,
    rtld_fini=0x4000a610 <_dl_fini>, stack_end=0xbffff93c)
    at ../sysdeps/generic/libc-start.c:90
(gdb) q
 
-----Original Message-----
From: Shane Adams
Sent: Saturday, September 09, 2000 5:34 PM
To: Modperl
Subject: RE: Core dumping

I was able to build mod_perl/apache with debugging.  The line at which apache drops is:
 
Program received signal SIGSEGV, Segmentation fault.
0x81714f7 in Perl_dounwind (cxix=3) at pp_ctl.c:1254
1254                POPSUB(cx,sv);
 
So it looks like in Perl_dounwind a seg fault is received on line 1254 in pp_ctl.c (course you could probably tell that =)
 
To bad I can't take a peek into the POPSUB macro itself... It's like 20 lines long and there is no way to get gdb to display the macro.  Least no way I know.
 
Shane
 
 
How the hell do people actually try to fix this?  The learning curve on trying to understand the internals of perl is enormous!
 
-----Original Message-----
From: Shane Adams
Sent: Friday, September 08, 2000 10:38 PM
To: Modperl
Subject: Core dumping

Hello -

I am experiencing a situation where apache core dumps.  We are using HTML-Mason.  The relevant revision numbers are:

Apache_1.3.12
mod_perl-1.24
perl-5.6.0
HTML-Mason .87
redhat 6.1 (no patches)

Our apache server is built in 2 flavors, one that uses Mason, another that doesn but uses mod_perl.

httpd-mason -l reveals
Compiled-in modules:
  http_core.c
  mod_log_config.c
  mod_mime.c
  mod_rewrite.c
  mod_access.c
  mod_setenvif.c
  mod_perl.c

whereas httpd-soap (straight mod_perl, but it is used to answer SOAP requests via SOAP.pm)
 http_core.c
  mod_log_config.c
  mod_mime.c
  mod_rewrite.c
  mod_access.c
  mod_setenvif.c
  mod_perl.c

Running a barebonse component (nothing tricky, just loads a normal html component) under Mason causes apache to core dump after a few dozen requests.  A stack trace reveals:

eading symbols from /lib/libnss_nis.so.2...done.
#0  0x8143b34 in Perl_pp_entersub ()
(gdb) where
#0  0x8143b34 in Perl_pp_entersub ()
#1  0x813aeda in Perl_runops_debug ()
#2  0x80e4b2f in perl_call_sv ()
#3  0x80e4780 in perl_call_sv ()
#4  0x8075aac in perl_call_handler ()
#5  0x8074fd8 in perl_run_stacked_handlers ()
#6  0x80726a8 in perl_handler ()
#7  0x80a0913 in ap_invoke_handler ()
#8  0x80b3f29 in ap_some_auth_required ()
#9  0x80b3f8c in ap_process_request ()
#10 0x80ab82e in ap_child_terminate ()
#11 0x80ab9bc in ap_child_terminate ()
#12 0x80abb19 in ap_child_terminate ()
#13 0x80ac146 in ap_child_terminate ()
#14 0x80ac8d3 in main ()
#15 0x400d31eb in __libc_start_main (main=0x80ac58c <main>, argc=2,
    argv=0xbffff944, init=0x806286c <_init>, fini=0x81a998c <_fini>,
    rtld_fini=0x4000a610 <_dl_fini>, stack_end=0xbffff93c)
    at ../sysdeps/generic/libc-start.c:90
(gdb)

I've tried building perl and apache and mod_perl with debugging turned on.  I can't seem to get more out of the core dump than this.

My point in listing the 2 flavors of our apache configurations is that httpd-soap does *not* core whereas the mason server does.

Normally I'd just try upgrading but I've hit the latest releases of each piece it seems. 

I don't know if this will shed any details as to what the problem is.

Any help is appreciated.

Shane


Reply via email to