Menu

#65 Segfault on 2.0.0_31

2.0x
closed-fixed
nobody
5
2014-07-23
2008-02-13
Noah Robin
No

Something unpleasant appears to have crept in between v29 and v31; wsdl2perl.pl v26 - v29 parses my (rather large) wsdl file without issue, but v31 runs for a while, throws errors, and ultimately segfaults.

Error Text:

$ perl /usr/local/bin/wsdl2perl.pl-v31 -b lib31/ file://tmp/wsdl/ldmp.wsdl

Deep recursion on subroutine "SOAP::WSDL::Expat::Base::parse_uri" at /usr/local/lib/perl5/SOAP/WSDL/Expat/WSDLParser.pm line 39.Deep recursion on subroutine "SOAP::WSDL::Expat::Base::parse" at /usr/local/lib/perl5/SOAP/WSDL/Expat/Base.pm line 42.Deep recursion on subroutine "XML::Parser::Expat::parse" at /usr/local/lib/perl5/SOAP/WSDL/Expat/Base.pm line 47.Deep recursion on subroutine "SOAP::WSDL::Expat::WSDLParser::xml_schema_import" at /usr/local/lib/perl5/SOAP/WSDL/Expat/WSDLParser.pm line 136.

Last lines of the backtrace (note the length of the backtrace; if you want the whole thing, let me know):

#113027 0x004e7b47 in XS_XML__Parser__Expat_ParseString ()
from /opt/bcs/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113028 0x080c48c1 in Perl_pp_entersub ()
#113029 0x080ab955 in Perl_runops_debug ()
#113030 0x080ede28 in Perl_pp_exit ()
#113031 0x080edf33 in Perl_pp_exit ()
#113032 0x080f0f28 in Perl_pp_entertry ()
#113033 0x080ab955 in Perl_runops_debug ()
#113034 0x08063cdd in Perl_call_sv ()
#113035 0x08063662 in Perl_call_sv ()
#113036 0x004e6567 in startElement ()
from /opt/bcs/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113037 0x004ee7da in doContent ()
from /opt/bcs/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113038 0x004edd1c in contentProcessor ()
from /opt/bcs/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113039 0x004f1207 in doProlog ()
from /opt/bcs/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113040 0x004f093b in prologProcessor ()
from /opt/bcs/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113041 0x004f04ce in prologInitProcessor ()
from /opt/bcs/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113042 0x004ed567 in XML_ParseBuffer ()
from /opt/bcs/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113043 0x004ed4b8 in XML_Parse ()
from /opt/bcs/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113044 0x004e7b47 in XS_XML__Parser__Expat_ParseString ()
from /opt/bcs/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113045 0x080c48c1 in Perl_pp_entersub ()
#113046 0x080ab955 in Perl_runops_debug ()
#113047 0x080ede28 in Perl_pp_exit ()
#113048 0x080edf33 in Perl_pp_exit ()
#113049 0x080f0f28 in Perl_pp_entertry ()
#113050 0x080ab955 in Perl_runops_debug ()
#113051 0x08063cdd in Perl_call_sv ()
#113052 0x08063662 in Perl_call_sv ()
#113053 0x004e6567 in startElement ()
from /opt/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113054 0x004ee7da in doContent ()
from /opt/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113055 0x004edd1c in contentProcessor ()
from /opt/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113056 0x004f1207 in doProlog ()
from /opt/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113057 0x004f093b in prologProcessor ()
from /opt/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113058 0x004f04ce in prologInitProcessor ()
from /opt/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113059 0x004ed567 in XML_ParseBuffer ()
from /opt/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113060 0x004ed4b8 in XML_Parse ()
from /opt/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113061 0x004e7b47 in XS_XML__Parser__Expat_ParseString ()
from /opt/packages/perl-modules-5.8/lib/vendor_perl/5.8/i686-linux/auto/XML/Parser/Expat/Expat.so
#113062 0x080c48c1 in Perl_pp_entersub ()
#113063 0x080ab955 in Perl_runops_debug ()
#113064 0x080630a7 in perl_run ()
#113065 0x08062cd4 in perl_run ()
#113066 0x0805f64e in main ()

Environment:

perl 5.8.7
RHEL 4

Discussion

  • Martin Kutter

    Martin Kutter - 2008-02-14

    Logged In: YES
    user_id=884175
    Originator: NO

    Hi Noah,

    this probably is due to the support for imports. It looks like some schema imports itself. While this is allowed in XML, the WSDL parser does not handle it yet.

    Thanks for reporting - I'll fix it as soon as possible.

     
  • Martin Kutter

    Martin Kutter - 2008-02-14

    Logged In: YES
    user_id=884175
    Originator: NO

    Hi Noah,

    fixed in 2.00_32, uploaded to CPAN a few minutes ago.

    Thanks !

     
  • Martin Kutter

    Martin Kutter - 2008-02-16
    • status: open --> closed-fixed
     

Log in to post a comment.

MongoDB Logo MongoDB