Subject: | XML::LibXML::Node::DESTROY causes segfault under mod_perl2 |
The problem is also described here: http://www.perlmonks.org/?node_id=649745
To me it looks like the cleanup at the end of the request does something
wrong, but I'm not exactly sure where to look. Is this a libxml bug, or
a mod_perl concurrency/thread issue (using prefork mpm in apache2).
XML-LibXML v1.58
Perl v5.8.7 built for i486-linux-gnu-thread-multi
Linux gm 2.6.15-29-686 #1 SMP PREEMPT Mon Sep 24 17:24:47 UTC 2007 i686
GNU/Linux (Ubuntu 6.06)
Apache 2.0.55-4ubuntu2.2
mod_perl 2.0.2-2ubuntu1.6.06.1
Trace:
#0 0xb7699e5e in xmlDictOwns () from /usr/lib/libxml2.so.2
#1 0xb75fe790 in xmlFreeNodeList () from /usr/lib/libxml2.so.2
#2 0xb75fe734 in xmlFreeNodeList () from /usr/lib/libxml2.so.2
#3 0xb75fe734 in xmlFreeNodeList () from /usr/lib/libxml2.so.2
#4 0xb75fe8fa in xmlFreeNode () from /usr/lib/libxml2.so.2
#5 0xb75b3305 in PmmFreeNode () from
/usr/lib/perl5/auto/XML/LibXML/LibXML.so
#6 0xb75b33fd in PmmREFCNT_dec () from
/usr/lib/perl5/auto/XML/LibXML/LibXML.so
#7 0xb75b33df in PmmREFCNT_dec () from
/usr/lib/perl5/auto/XML/LibXML/LibXML.so
#8 0xb75981aa in XS_XML__LibXML__Node_DESTROY () from
/usr/lib/perl5/auto/XML/LibXML/LibXML.so
#9 0xb786d3b9 in Perl_pp_entersub () from /usr/lib/libperl.so.5.8
#10 0xb7804f10 in Perl_get_cv () from /usr/lib/libperl.so.5.8
#11 0xb7808cf1 in Perl_call_sv () from /usr/lib/libperl.so.5.8
#12 0xb7870079 in Perl_sv_clear () from /usr/lib/libperl.so.5.8
#13 0xb7870922 in Perl_sv_free () from /usr/lib/libperl.so.5.8
#14 0xb787039a in Perl_sv_clear () from /usr/lib/libperl.so.5.8
#15 0xb7870922 in Perl_sv_free () from /usr/lib/libperl.so.5.8
#16 0xb7895052 in Perl_free_tmps () from /usr/lib/libperl.so.5.8
#17 0xb7865a1e in Perl_pp_nextstate () from /usr/lib/libperl.so.5.8
#18 0xb7865917 in Perl_runops_standard () from /usr/lib/libperl.so.5.8
#19 0xb7804ef0 in Perl_get_cv () from /usr/lib/libperl.so.5.8
#20 0xb7808cf1 in Perl_call_sv () from /usr/lib/libperl.so.5.8
#21 0xb7918b7f in modperl_callback () from
/usr/lib/apache2/modules/mod_perl.so
#22 0xb7919451 in modperl_callback_run_handlers () from
/usr/lib/apache2/modules/mod_perl.so
#23 0xb79196ff in modperl_callback_per_dir () from
/usr/lib/apache2/modules/mod_perl.so
#24 0xb7913f61 in modperl_response_finish () from
/usr/lib/apache2/modules/mod_perl.so
#25 0xb79141e2 in modperl_response_handler_cgi () from
/usr/lib/apache2/modules/mod_perl.so
#26 0x08077e48 in ap_run_handler ()
#27 0x080781cc in ap_invoke_handler ()
#28 0x08069c7f in ap_process_request ()
#29 0x08064c52 in _start ()
XML file used when problem happens:
<?xml version="1.0" encoding="UTF-8"?>
<lom xmlns="http://www.imsglobal.org/xsd/imsmd_v1p2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.imsglobal.org/xsd/imsmd_v1p2p2.xsd">
<general>
<title>
<langstring lang="nb">Poteten - skadelig eller bra for oss?</langstring>
<langstring lang="nn">Er poteten skadeleg eller bra for oss?</langstring>
</title>
</general>
</lom>