Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

panda fails due to precompilation error #3780

Closed
p6rt opened this issue Apr 14, 2015 · 4 comments
Closed

panda fails due to precompilation error #3780

p6rt opened this issue Apr 14, 2015 · 4 comments

Comments

@p6rt
Copy link

p6rt commented Apr 14, 2015

Migrated from rt.perl.org#124298 (status was 'resolved')

Searchable as RT124298$

@p6rt
Copy link
Author

p6rt commented Apr 14, 2015

From @Tux

$ git clone github.com​:Tux/CSV Text-CSV-perl6
Cloning into 'Text-CSV-perl6'...
X11 forwarding request failed on channel 0
remote​: Counting objects​: 1421, done.
remote​: Compressing objects​: 100% (41/41), done.
remote​: Total 1421 (delta 23), reused 20 (delta 20), pack-reused 1359
Receiving objects​: 100% (1421/1421), 277.10 KiB | 0 bytes/s, done.
Resolving deltas​: 100% (924/924), done.
Checking connectivity... done.

$ cd Text-CSV-perl6
$ perl6 --version
This is perl6 version 2015.03-255-gecaf8ea built on MoarVM version 2015.03-102-g3f29518
$ git log | head -3
commit 59682309c025780e6fccfe4b3878cbd9643853ea
Author​: H.Merijn Brand <h.m.brand@​xs4all.nl>
Date​: Tue Apr 14 09​:44​:44 2015 +0200
$ prove -e 'perl6 -Ilib' -r t/
t/10_base.t ....... ok
t/12_acc.t ........ ok
t/15_flags.t ...... ok
t/16_methods.t .... ok
t/20_file.t ....... ok
t/21_combine.t .... ok
t/22_print.t ...... ok
t/40_misc.t ....... ok
t/41_null.t ....... ok
t/50_utf8.t ....... ok
t/55_combi.t ...... ok
t/60_samples.t .... ok
t/65_allow.t ...... ok
t/75_hashref.t .... ok
t/77_getall.t ..... ok
t/78_fragment.t ... ok
t/79_callbacks.t .. ok
t/81_subclass.t ... ok
t/82_subclass.t ... ok
t/90_csv.t ........ ok
All tests successful.
Files=20, Tests=18948, 111 wallclock secs ( 2.05 usr 0.14 sys + 110.33 cusr 1.40 csys = 113.92 CPU)
Result​: PASS
$ cat META.info
{ "name" : "Text​::CSV",
  "version" : "0.002",
  "perl" : "v6.0.0",
  "description" : "Parse CSV data, API like Text​::CSV_XS",
  "auth" : "github​:Tux",
  "authors" : [ "H.Merijn Brand (Tux)" ],
  "tags" : [ "CSV" ],
  "depends" : [ "Slang​::Tuxic", "File​::Temp" ],
  "test-depends" : [ "Test" ],
  "provides" : {
  "Text​::CSV" : "lib/Text/CSV.pm"
  },
  "repo-type" : "git",
  "source-url" : "git​://github.com/Tux/CSV.git",
  "license" : "http://www.perlfoundation.org/artistic_license_2_0",
  "support" : {
  "irc" : "irc​://irc.perl.org/#csv"
  }
  }
$ panda install .
==> Installing Text​::CSV from a local directory '.'
==> Fetching Text​::CSV
==> Building Text​::CSV
Compiling lib/Text/CSV.pm to mbc
==> Testing Text​::CSV
t/10_base.t .......
No subtests run
:
:

<tadzik> [Tux]​: ok, this is quite interesting. Your tests segfault rakudo, but crash the debugger
<tadzik> (perl6 debugger)
<tadzik> with a mysterious yet scary "Unhandled exception​: ctxlexpad needs an MVMContext"
<tadzik> good news is, Text​::CSV works perfectly fine when not precompiled
<tadzik> so it is *just* a precompilation bug
<tadzik> I'm sure jnthn'll love it :P
<|Tux|> LOL
<masak> I suspected precompilation might be involved somehow.
<masak> nice detective work, |Tux|++ and tadzik++

$ mkdir -p blib/lib/Text
$ perl6-m --target=mbc --output=blib/lib/Text/CSV.pm.moarvm \
  lib/Text/CSV.pm
$ perl6-m -I blib/lib -e'use Text​::CSV; my $c = Text​::CSV.new'
/pro/3gl/CPAN/rakudobrew/bin/perl6-m​: line 2​: 5817 Segmentation fault /pro/3gl/CPAN/rakudobrew/moar-nom/install/bin/perl6-m "$@​"
$ gdb /pro/3gl/CPAN/rakudobrew/moar-nom/install/bin/moar
GNU gdb (GDB; openSUSE 13.1) 7.6.50.20130731-cvs
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+​: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software​: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-suse-linux".
Type "show configuration" for configuration details.
For bug reporting instructions, please see​:
<http://bugs.opensuse.org/>.
Find the GDB manual and other documentation resources online at​:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".
..
Reading symbols from /pro/3gl/CPAN/rakudobrew/moar-nom/install/bin/moar...done.
(gdb) run --execname=perl6-m --libpath="/pro/3gl/CPAN/rakudobrew/moar-nom/install/share/nqp/lib" --libpath="/pro/3gl/CPAN/rakudobrew/moar-nom/install/share/perl6/lib" --libpath="/pro/3gl/CPAN/rakudobrew/moar-nom/install/share/perl6/runtime" /pro/3gl/CPAN/rakudobrew/moar-nom/install/share/perl6/runtime/perl6.moarvm -I blib/lib -e'use Text​::CSV; my $c = Text​::CSV.new'
Starting program​: /pro/3gl/CPAN/rakudobrew/moar-nom/install/bin/moar --execname=perl6-m --libpath="/pro/3gl/CPAN/rakudobrew/moar-nom/install/share/nqp/lib" --libpath="/pro/3gl/CPAN/rakudobrew/moar-nom/install/share/perl6/lib" --libpath="/pro/3gl/CPAN/rakudobrew/moar-nom/install/share/perl6/runtime" /pro/3gl/CPAN/rakudobrew/moar-nom/install/share/perl6/runtime/perl6.moarvm -I blib/lib -e'use Text​::CSV; my $c = Text​::CSV.new'
Missing separate debuginfo for /lib64/ld-linux-x86-64.so.2
Try​: zypper install -C "debuginfo(build-id)=afa98667969782208459e394f8c8f87ac7510710"
Missing separate debuginfo for /lib64/libc.so.6
Try​: zypper install -C "debuginfo(build-id)=c7c72f96fa3d494e7c83df16a7d36177bb5c22d0"
Missing separate debuginfo for /lib64/libm.so.6
Try​: zypper install -C "debuginfo(build-id)=35d35d9ce781be3a140a34242d998498615b021f"
Missing separate debuginfo for /lib64/libpthread.so.0
Try​: zypper install -C "debuginfo(build-id)=24a941b6c85e244bd2e4906928dc17ab63b0a38a"
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Missing separate debuginfo for /lib64/librt.so.1
Try​: zypper install -C "debuginfo(build-id)=0913d5ea4659cfa3ffad451acc84a6ed62772141"
Missing separate debuginfo for /lib64/libdl.so.2
Try​: zypper install -C "debuginfo(build-id)=666913ec064c25fde1720db77b1f57bdeb5d9b3a"

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff79883c9 in MVM_6model_find_method_cache_only ()
  from /pro/3gl/CPAN/rakudobrew/moar-nom/install/lib/libmoar.so
(gdb) where
#​0 0x00007ffff79883c9 in MVM_6model_find_method_cache_only ()
  from /pro/3gl/CPAN/rakudobrew/moar-nom/install/lib/libmoar.so
#​1 0x00007ffff5c74797 in rakudo_scalar_store ()
  from /pro/3gl/CPAN/rakudobrew/moar-nom/install/share/perl6/runtime/dynext/libperl6_ops_moar.so
#​2 0x00007ffff7943dcf in MVM_interp_run ()
  from /pro/3gl/CPAN/rakudobrew/moar-nom/install/lib/libmoar.so
#​3 0x00007ffff79bcb2f in MVM_vm_run_file ()
  from /pro/3gl/CPAN/rakudobrew/moar-nom/install/lib/libmoar.so
#​4 0x0000000000401084 in main ()

--
H.Merijn Brand http://tux.nl Perl Monger http://amsterdam.pm.org/
using perl5.00307 .. 5.21 porting perl5 on HP-UX, AIX, and openSUSE
http://mirrors.develooper.com/hpux/ http://www.test-smoke.org/
http://qa.perl.org http://www.goldmark.org/jeff/stupid-disclaimers/

@p6rt
Copy link
Author

p6rt commented Jun 29, 2015

From @jnthn

On Tue Apr 14 02​:49​:37 2015, hmbrand wrote​:

...
$ panda install .
==> Installing Text​::CSV from a local directory '.'
==> Fetching Text​::CSV
==> Building Text​::CSV
Compiling lib/Text/CSV.pm to mbc
==> Testing Text​::CSV
t/10_base.t .......
No subtests run
:
:

<tadzik> [Tux]​: ok, this is quite interesting. Your tests segfault
rakudo, but crash the debugger
<tadzik> (perl6 debugger)
<tadzik> with a mysterious yet scary "Unhandled exception​: ctxlexpad
needs an MVMContext"
<tadzik> good news is, Text​::CSV works perfectly fine when not
precompiled
<tadzik> so it is *just* a precompilation bug
<tadzik> I'm sure jnthn'll love it :P
<|Tux|> LOL
<masak> I suspected precompilation might be involved somehow.
<masak> nice detective work, |Tux|++ and tadzik++

Turns out this bug was the same one in RT #​125245, which I've just fixed. I just grabbed Test​::CSV and the tests now run the same with and without pre-compilation, so seems this is fixed.

@p6rt
Copy link
Author

p6rt commented Jun 29, 2015

The RT System itself - Status changed from 'new' to 'open'

@p6rt p6rt closed this as completed Jun 29, 2015
@p6rt
Copy link
Author

p6rt commented Jun 29, 2015

@jnthn - Status changed from 'open' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant