Perl / perl5

🐪 The Perl programming language
https://dev.perl.org/perl5/
Other
1.97k stars 560 forks source link

Not OK: perl v5.7.0 +DEVEL8465 on i686-linux 2.2.13 #3138

Closed p5pRT closed 20 years ago

p5pRT commented 23 years ago

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

Searchable as RT5225$

p5pRT commented 23 years ago

From @abigail

This is an automatically generated message. Build with patch 8465. Configure options​: (none)

========== Test failure ==========

Failed Test Status Wstat Total Fail Failed List of Failed


lib/odbm.t 2 512 66 62 93.94% 5-66 6 tests and 85 subtests skipped. Failed 1/277 test scripts\, 99.64% okay. 62/21086 subtests failed\, 99.71% okay.

---------- lib/odbm.t ---------- lib/odbm............Assertion failed​: file "sv.c"\, line 3532 at lib/odbm.t line 88. dubious   Test returned status 2 (wstat 512\, 0x200) DIED. FAILED tests 5-66   Failed 62/66 tests\, 6.06% okay Failed Test Status Wstat Total Fail Failed List of Failed


lib/odbm.t 2 512 66 62 93.94% 5-66 Failed 1/1 test scripts\, 0.00% okay. 62/66 subtests failed\, 6.06% okay.


Flags​:   category=install   severity=none


Site configuration information for perl v5.7.0​:

Configured by abigail at Thu Jan 18 01​:50​:26 MET 2001.

Summary of my perl5 (revision 5.0 version 7 subversion 0) configuration​:   Platform​:   osname=linux\, osvers=2.2.13\, archname=i686-linux   uname='linux alexandra 2.2.13 #5 tue feb 8 15​:37​:54 est 2000 i686 unknown '   config_args='-Dcf_email=abigail@​foad.org -Dperladmin=abigail@​foad.org -Doptimize=-g -des -Uinstallusrbinperl -Dprefix=/opt/bleedperl -Dusedevel'   hint=recommended\, useposix=true\, d_sigaction=define   usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef   useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef   use64bitint=undef use64bitall=undef uselongdouble=undef   Compiler​:   cc='cc'\, ccflags ='-DDEBUGGING -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'\,   optimize='-g'\,   cppflags='-DDEBUGGING -fno-strict-aliasing -I/usr/local/include'   ccversion=''\, gccversion='2.95.2 19991024 (release)'\, gccosandvers=''   intsize=4\, longsize=4\, ptrsize=4\, doublesize=8\, byteorder=1234   d_longlong=define\, longlongsize=8\, d_longdbl=define\, longdblsize=12   ivtype='long'\, ivsize=4\, nvtype='double'\, nvsize=8\, Off_t='off_t'\, lseeksize=8   alignbytes=4\, usemymalloc=n\, prototype=define   Linker and Libraries​:   ld='cc'\, ldflags =' -L/usr/local/lib'   libpth=/usr/local/lib /lib /usr/lib   libs=-lnsl -lndbm -lgdbm -ldbm -ldb -ldl -lm -lc -lposix -lcrypt -lutil   perllibs=-lnsl -ldl -lm -lc -lposix -lcrypt -lutil   libc=/lib/libc-2.1.2.so\, so=so\, useshrplib=false\, libperl=libperl.a   Dynamic Linking​:   dlsrc=dl_dlopen.xs\, dlext=so\, d_dlsymun=undef\, ccdlflags='-rdynamic'   cccdlflags='-fpic'\, lddlflags='-shared -L/usr/local/lib'

Locally applied patches​:   DEVEL8465


@​INC for perl v5.7.0​:   lib   /home/abigail/Perl   /home/abigail/Sybase   /opt/bleedperl/lib/5.7.0/i686-linux   /opt/bleedperl/lib/5.7.0   /opt/bleedperl/lib/site_perl/5.7.0/i686-linux   /opt/bleedperl/lib/site_perl/5.7.0   /opt/bleedperl/lib/site_perl   .


Environment for perl v5.7.0​:   HOME=/home/abigail   LANG (unset)   LANGUAGE (unset)   LD_LIBRARY_PATH=/home/abigail/Lib​:/usr/local/lib​:/usr/lib​:/lib​:/usr/X11R6/lib​:/opt/tcl/lib​:/opt/tk/lib/tk8.0   LOGDIR (unset)   PATH=/home/abigail/Bin​:/opt/perl/bin​:/opt/tcl/bin​:/opt/tk/bin​:/usr/local/bin​:/usr/local/X11/bin​:/usr/bin​:/bin​:/usr/local/sbin​:/usr/sbin​:/sbin​:/usr/X11R6/bin​:/usr/games​:/opt/povray/bin​:/opt/teTeX/bin/i686-pc-linux-gnu​:/opt/python/bin​:/opt/acrobat/bin   PERL5LIB=/home/abigail/Perl​:/home/abigail/Sybase   PERLDIR=/opt/perl   PERLNAME=perl   PERL_BADLANG (unset)   SHELL=/bin/bash

p5pRT commented 23 years ago

From @jhi

lib/odbm............Assertion failed​: file "sv.c"\, line 3532 at lib/odbm.t line 88.

t/lib/odbm.t​:

  87
  88 @​keys = keys(%h);   89 @​values = values(%h);

sv.c​:

3531 IV iv = len; 3532 assert(iv >= 0); 3533 }

Something is calling sv_setpvn with a negative pv length.

Could you recompile with debug and set a breakpoint before on the assert() line so that we get a stack trace?

p5pRT commented 23 years ago

From @abigail

On Thu\, Jan 18\, 2001 at 08​:20​:55AM -0600\, Jarkko Hietaniemi wrote​:

lib/odbm............Assertion failed​: file "sv.c"\, line 3532 at lib/odbm.t line 88.

t/lib/odbm.t​:

87
88 @​keys = keys(%h); 89 @​values = values(%h);

sv.c​:

3531 IV iv = len; 3532 assert(iv >= 0); 3533 }

Something is calling sv_setpvn with a negative pv length.

Could you recompile with debug and set a breakpoint before on the assert() line so that we get a stack trace?

I'll give it a shot after dinner\, but since my experience with debuggers dates from one session more than 10 years ago I can't garantee I will succeed...

Abigail

p5pRT commented 23 years ago

From @abigail

On Thu\, Jan 18\, 2001 at 08​:20​:55AM -0600\, Jarkko Hietaniemi wrote​:

lib/odbm............Assertion failed​: file "sv.c"\, line 3532 at lib/odbm.t line 88.

t/lib/odbm.t​:

87
88 @​keys = keys(%h); 89 @​values = values(%h);

sv.c​:

3531 IV iv = len; 3532 assert(iv >= 0); 3533 }

Something is calling sv_setpvn with a negative pv length.

Could you recompile with debug and set a breakpoint before on the assert() line so that we get a stack trace?

Breakpoint 1\, Perl_sv_setpvn (sv=0x81c092c\, ptr=0x0\, len=3221223300)   at sv.c​:3532 3532 assert(iv >= 0); (gdb) backtrace #0 Perl_sv_setpvn (sv=0x81c092c\, ptr=0x0\, len=3221223300) at sv.c​:3532 #1 0x4016803f in XS_ODBM_File_NEXTKEY (cv=0x81e0cf4) at ODBM_File.c​:320 #2 0x80c21cb in Perl_pp_entersub () at pp_hot.c​:2654 #3 0x80b8a5b in Perl_runops_debug () at run.c​:53 #4 0x805e9dd in S_call_body (myop=0xbffff498\, is_eval=0) at perl.c​:1811 #5 0x805e2d6 in perl_call_sv (sv=0x81c0920\, flags=64) at perl.c​:1690 #6 0x805e092 in perl_call_method (methname=0x81337e7 "NEXTKEY"\, flags=0)   at perl.c​:1623 #7 0x80af52a in Perl_magic_nextpack (sv=0x817f578\, mg=0x81ec130\,   key=0x81c0914) at mg.c​:1246 #8 0x80b4db9 in Perl_hv_iternext (hv=0x817f578) at hv.c​:1313 #9 0x8110c6c in Perl_do_kv () at doop.c​:1257 #10 0x80e25ef in Perl_pp_keys () at pp.c​:3420 #11 0x80b8a5b in Perl_runops_debug () at run.c​:53 #12 0x805dd11 in S_run_body (oldscope=1) at perl.c​:1458 #13 0x805d8e1 in perl_run (my_perl=0x8145730) at perl.c​:1380 #14 0x805a515 in main (argc=2\, argv=0xbffff784\, env=0xbffff790)   at perlmain.c​:52 #15 0x40063641 in __libc_start_main (main=0x805a490 \

\, argc=2\,   argv=0xbffff784\, init=0x8059594 \<_init>\, fini=0x81270c4 \<_fini>\,   rtld_fini=0x40009e34 \<_dl_fini>\, stack_end=0xbffff77c)   at ../sysdeps/generic/libc-start.c​:90

Abigail

p5pRT commented 23 years ago

From @jhi

On Thu\, Jan 18\, 2001 at 11​:02​:41PM +0100\, abigail@​foad.org wrote​:

On Thu\, Jan 18\, 2001 at 08​:20​:55AM -0600\, Jarkko Hietaniemi wrote​:

lib/odbm............Assertion failed​: file "sv.c"\, line 3532 at lib/odbm.t line 88.

t/lib/odbm.t​:

87
88 @​keys = keys(%h); 89 @​values = values(%h);

sv.c​:

3531 IV iv = len; 3532 assert(iv >= 0); 3533 }

Something is calling sv_setpvn with a negative pv length.

Could you recompile with debug and set a breakpoint before on the assert() line so that we get a stack trace?

Breakpoint 1\, Perl_sv_setpvn (sv=0x81c092c\, ptr=0x0\, len=3221223300) at sv.c​:3532 3532 assert(iv >= 0);

Okay\, thanks. Looks like RETVAL.dsize (where RETVAL is a DBM 'datum') is (suspiciouly) humongous. Now if I only knew how to coax my Linux into building the odbm extension...

(gdb) backtrace #0 Perl_sv_setpvn (sv=0x81c092c\, ptr=0x0\, len=3221223300) at sv.c​:3532 #1 0x4016803f in XS_ODBM_File_NEXTKEY (cv=0x81e0cf4) at ODBM_File.c​:320 #2 0x80c21cb in Perl_pp_entersub () at pp_hot.c​:2654 #3 0x80b8a5b in Perl_runops_debug () at run.c​:53 #4 0x805e9dd in S_call_body (myop=0xbffff498\, is_eval=0) at perl.c​:1811 #5 0x805e2d6 in perl_call_sv (sv=0x81c0920\, flags=64) at perl.c​:1690 #6 0x805e092 in perl_call_method (methname=0x81337e7 "NEXTKEY"\, flags=0) at perl.c​:1623 #7 0x80af52a in Perl_magic_nextpack (sv=0x817f578\, mg=0x81ec130\, key=0x81c0914) at mg.c​:1246 #8 0x80b4db9 in Perl_hv_iternext (hv=0x817f578) at hv.c​:1313 #9 0x8110c6c in Perl_do_kv () at doop.c​:1257 #10 0x80e25ef in Perl_pp_keys () at pp.c​:3420 #11 0x80b8a5b in Perl_runops_debug () at run.c​:53 #12 0x805dd11 in S_run_body (oldscope=1) at perl.c​:1458 #13 0x805d8e1 in perl_run (my_perl=0x8145730) at perl.c​:1380 #14 0x805a515 in main (argc=2\, argv=0xbffff784\, env=0xbffff790) at perlmain.c​:52 #15 0x40063641 in __libc_start_main (main=0x805a490 \

\, argc=2\, argv=0xbffff784\, init=0x8059594 \<_init>\, fini=0x81270c4 \<_fini>\, rtld_fini=0x40009e34 \<_dl_fini>\, stack_end=0xbffff77c) at ../sysdeps/generic/libc-start.c​:90

Abigail

p5pRT commented 23 years ago

From @jhi

On Thu\, Jan 18\, 2001 at 11​:02​:41PM +0100\, abigail@​foad.org wrote​:

On Thu\, Jan 18\, 2001 at 08​:20​:55AM -0600\, Jarkko Hietaniemi wrote​:

lib/odbm............Assertion failed​: file "sv.c"\, line 3532 at lib/odbm.t line 88.

t/lib/odbm.t​:

87
88 @​keys = keys(%h); 89 @​values = values(%h);

sv.c​:

3531 IV iv = len; 3532 assert(iv >= 0); 3533 }

Something is calling sv_setpvn with a negative pv length.

Could you recompile with debug and set a breakpoint before on the assert() line so that we get a stack trace?

Breakpoint 1\, Perl_sv_setpvn (sv=0x81c092c\, ptr=0x0\, len=3221223300) at sv.c​:3532 3532 assert(iv >= 0); (gdb) backtrace #0 Perl_sv_setpvn (sv=0x81c092c\, ptr=0x0\, len=3221223300) at sv.c​:3532 #1 0x4016803f in XS_ODBM_File_NEXTKEY (cv=0x81e0cf4) at ODBM_File.c​:320 #2 0x80c21cb in Perl_pp_entersub () at pp_hot.c​:2654 #3 0x80b8a5b in Perl_runops_debug () at run.c​:53 #4 0x805e9dd in S_call_body (myop=0xbffff498\, is_eval=0) at perl.c​:1811 #5 0x805e2d6 in perl_call_sv (sv=0x81c0920\, flags=64) at perl.c​:1690 #6 0x805e092 in perl_call_method (methname=0x81337e7 "NEXTKEY"\, flags=0) at perl.c​:1623 #7 0x80af52a in Perl_magic_nextpack (sv=0x817f578\, mg=0x81ec130\, key=0x81c0914) at mg.c​:1246

Could you say "up" until you are in this stack frame and then

  call Perl_sv_dump(sv)   call Perl_sv_dump(key)

#8 0x80b4db9 in Perl_hv_iternext (hv=0x817f578) at hv.c​:1313 #9 0x8110c6c in Perl_do_kv () at doop.c​:1257 #10 0x80e25ef in Perl_pp_keys () at pp.c​:3420 #11 0x80b8a5b in Perl_runops_debug () at run.c​:53 #12 0x805dd11 in S_run_body (oldscope=1) at perl.c​:1458 #13 0x805d8e1 in perl_run (my_perl=0x8145730) at perl.c​:1380 #14 0x805a515 in main (argc=2\, argv=0xbffff784\, env=0xbffff790) at perlmain.c​:52 #15 0x40063641 in __libc_start_main (main=0x805a490 \

\, argc=2\, argv=0xbffff784\, init=0x8059594 \<_init>\, fini=0x81270c4 \<_fini>\, rtld_fini=0x40009e34 \<_dl_fini>\, stack_end=0xbffff77c) at ../sysdeps/generic/libc-start.c​:90

Abigail

p5pRT commented 23 years ago

From @abigail

On Tue\, Jan 23\, 2001 at 09​:33​:51AM -0600\, Jarkko Hietaniemi wrote​:

On Thu\, Jan 18\, 2001 at 11​:02​:41PM +0100\, abigail@​foad.org wrote​:

On Thu\, Jan 18\, 2001 at 08​:20​:55AM -0600\, Jarkko Hietaniemi wrote​:

lib/odbm............Assertion failed​: file "sv.c"\, line 3532 at lib/odbm.t line 88.

t/lib/odbm.t​:

87
88 @​keys = keys(%h); 89 @​values = values(%h);

sv.c​:

3531 IV iv = len; 3532 assert(iv >= 0); 3533 }

Something is calling sv_setpvn with a negative pv length.

Could you recompile with debug and set a breakpoint before on the assert() line so that we get a stack trace?

Breakpoint 1\, Perl_sv_setpvn (sv=0x81c092c\, ptr=0x0\, len=3221223300) at sv.c​:3532 3532 assert(iv >= 0); (gdb) backtrace #0 Perl_sv_setpvn (sv=0x81c092c\, ptr=0x0\, len=3221223300) at sv.c​:3532 #1 0x4016803f in XS_ODBM_File_NEXTKEY (cv=0x81e0cf4) at ODBM_File.c​:320 #2 0x80c21cb in Perl_pp_entersub () at pp_hot.c​:2654 #3 0x80b8a5b in Perl_runops_debug () at run.c​:53 #4 0x805e9dd in S_call_body (myop=0xbffff498\, is_eval=0) at perl.c​:1811 #5 0x805e2d6 in perl_call_sv (sv=0x81c0920\, flags=64) at perl.c​:1690 #6 0x805e092 in perl_call_method (methname=0x81337e7 "NEXTKEY"\, flags=0) at perl.c​:1623 #7 0x80af52a in Perl_magic_nextpack (sv=0x817f578\, mg=0x81ec130\, key=0x81c0914) at mg.c​:1246

Could you say "up" until you are in this stack frame and then

call Perl\_sv\_dump\(sv\)
call Perl\_sv\_dump\(key\)

(gdb) call Perl_sv_dump(sv) SV = PVHV(0x8195c98) at 0x817f54c   REFCNT = 1   FLAGS = (RMG\,SHAREKEYS)   IV = 0   NV = 0   MAGIC = 0x81ec180   MG_VIRTUAL = &PL_vtbl_pack   MG_TYPE = 'P'   MG_FLAGS = 0x02   REFCOUNTED   MG_OBJ = 0x81bcef8   SV = RV(0x816516c) at 0x81bcef8   REFCNT = 1   FLAGS = (ROK)   RV = 0x81bcf1c   ARRAY = 0x0   KEYS = 0   FILL = 0   MAX = 7   RITER = -1   EITER = 0x81e9dac

(gdb) call Perl_sv_dump(key) SV = PV(0x81e37c0) at 0x81c0914   REFCNT = 1   FLAGS = (TEMP\,POK\,pPOK)   PV = 0x8150d80 "s"\0   CUR = 1   LEN = 2