CC: | ANDK [...] cpan.org |
Subject: | Core Dump on Perl 5.10 |
Date: | Fri, 13 Feb 2015 12:02:19 -0800 |
To: | bug-Params-Validate [...] rt.cpan.org |
From: | "David E. Wheeler" <dwheeler [...] cpan.org> |
I've been seeing quite a few test failures in Sqitch, where the tests just exit with no output after a certain number of tests. Here's an example:
http://www.cpantesters.org/cpan/report/100e46c0-b2f1-11e4-b986-627b8971dd2f
This happens most often on Perl 5.10, but I have seen it happen on 5.12, too, like here:
https://travis-ci.org/theory/sqitch/jobs/50537629
I have not been able to replicate it myself, but asked Andreas about the above cpan-testers failure and he replied with:
Show quoted text
> I just ran it about 30 times finally produced a core file and a stack trace:
>
> Program terminated with signal SIGSEGV, Segmentation fault.
> #0 0x000000000046e1ef in S_restore_magic (p=p@entry=0x6e0) at mg.c:3043
> 3043 mg.c: No such file or directory.
> (gdb) bt
> #0 0x000000000046e1ef in S_restore_magic (p=p@entry=0x6e0) at mg.c:3043
> #1 0x000000000046e468 in Perl_mg_set (sv=sv@entry=0x302a488) at mg.c:296
> #2 0x000000000046e880 in Perl_mg_localize (sv=sv@entry=0x3027458,
> nsv=nsv@entry=0x302a488) at mg.c:499
> #3 0x00000000004a3849 in S_save_scalar_at (
> sptr=sptr@entry=0x7345c8 <PL_diehook>) at scope.c:182
> #4 0x00000000004a4abe in Perl_save_svref (
> sptr=sptr@entry=0x7345c8 <PL_diehook>) at scope.c:621
> #5 0x00007fc516026e98 in validate_one_param (value=0x302a1a0,
> params=0x302a140, spec=0x2ef34a8, id=0x302a3f8, options=0x302a110,
> untaint=0x7fff20e59d38) at lib/Params/Validate/XS.xs:681
> #6 0x00007fc516029a73 in validate (p=0x302a140, specs=0x2ef2758, options=0x0,
> options@entry=0x302a110, ret=0x0, ret@entry=0x302a350)
> at lib/Params/Validate/XS.xs:1288
> #7 0x00007fc51602aa56 in XS_Params__Validate__XS_validate (cv=<optimized out>)
> at lib/Params/Validate/XS.xs:1670
> #8 0x000000000048342c in Perl_pp_entersub () at pp_hot.c:2888
> #9 0x000000000047b6ed in Perl_runops_standard () at run.c:40
> #10 0x000000000042fa7c in S_run_body (oldscope=1) at perl.c:2426
> #11 perl_run (my_perl=<optimized out>) at perl.c:2349
> #12 0x000000000041c764 in main (argc=2, argv=0x7fff20e5a058,
> env=0x7fff20e5a070) at perlmain.c:117
>
> Hope this helps a bit. Maybe try valgrind? Let me know if I can do
> anything else for you.
I asked Andreas what version was installed. His reply:
Show quoted text> cpan[5]> m Params::Validate
> Module id = Params::Validate
> CPAN_USERID DROLSKY (Dave Rolsky <autarch@urth.org>)
> CPAN_VERSION 1.17
> CPAN_FILE D/DR/DROLSKY/Params-Validate-1.17.tar.gz
> UPLOAD_DATE 2015-01-09
> MANPAGE Params::Validate - Validate method/function parameters
> INST_FILE /home/sand/src/perl/repoperls/installed-perls/perl/perl-5.10.1/5da8/lib/site_perl/5.10.1/x86_64-linux/Params/Validate.pm
> INST_VERSION 1.17
Thanks,
David