Front page | perl.perl5.porters |
Postings from January 2001
[ID 20010115.011] Perl 5.6.1-TRAIL1 core dumps in Boulder::Store
From:
root
Date:
January 15, 2001 12:31
Subject:
[ID 20010115.011] Perl 5.6.1-TRAIL1 core dumps in Boulder::Store
Message ID:
200101152031.NAA13668@nuxi.ucc.nau.edu
This is a bug report for perl from John.Campbell@nau.edu,
generated with the help of perlbug 1.33 running under perl v5.6.1.
-----------------------------------------------------------------
[Please enter your report here]
Perl 5.6.1-TRAIL1 will core dump trying to run the t/store.t test in
Boulder::Store. This does not happen in Perl 5.6.0 and the core dump
can be generated either under gcc or CC and under usemymalloc or
without usemymalloc. Note that the bug goes away under perl -d.
Here's a typescript of the bug under gdb control:
12 root@nuxi# perl -V
Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
Platform:
osname=solaris, osvers=2.6, archname=sun4-solaris
uname='sunos nuxi 5.6 generic_105181-23 sun4u sparc sunw,ultra-1 '
config_args='-Dprefix=/nau/share/packages/perl5.6 -Ubincompat5005 -Uusemymalloc'
hint=previous, 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='gcc', ccflags ='-I /nau/share/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-g -O',
cppflags='-I /nau/share/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
ccversion='Sun WorkShop 6 2000/04/07 C 5.1', gccversion='2.95.2 19991024 (release)', gccosandvers='solaris2.6'
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=8, usemymalloc=n, prototype=define
Linker and Libraries:
ld='gcc', ldflags =' '
libpth=/nau/share/lib /nau/share/packages/SUNWspro/SC4.2/lib /lib /usr/lib /usr/ccs/lib
libs=-lsocket -lnsl -lgdbm -ldb -ldl -lm -lc -lcrypt -lsec
perllibs=-lsocket -lnsl -ldl -lm -lc -lcrypt -lsec
libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
cccdlflags='-fPIC -fshared-data', lddlflags='-G'
Characteristics of this binary (from libperl):
Compile-time options: USE_LARGE_FILES
Locally applied patches:
v5.6.1-TRIAL1
Built under solaris
Compiled at Jan 6 2001 20:45:50
@INC:
/nau/share/packages/perl5.6/lib/5.6.1/sun4-solaris
/nau/share/packages/perl5.6/lib/5.6.1
/nau/share/packages/perl5.6/lib/site_perl/5.6.1/sun4-solaris
/nau/share/packages/perl5.6/lib/site_perl/5.6.1
/nau/share/packages/perl5.6/lib/site_perl
.
13 root@nuxi# perl Makefile.PL
Checking if your kit is complete...
Looks good
Writing Makefile for Boulder
14 root@nuxi# make
cp Boulder/Swissprot.pm blib/lib/Boulder/Swissprot.pm
cp Boulder/Labbase.pm blib/lib/Boulder/Labbase.pm
cp Boulder/Blast/WU.pm blib/lib/Boulder/Blast/WU.pm
cp Boulder/Blast/NCBI.pm blib/lib/Boulder/Blast/NCBI.pm
cp Boulder/Omim.pm blib/lib/Boulder/Omim.pm
cp Boulder/Blast.pm blib/lib/Boulder/Blast.pm
cp Stone/GB_Sequence.pm blib/lib/Stone/GB_Sequence.pm
cp Stone.pm blib/lib/Stone.pm
cp Boulder.pod blib/lib/Boulder.pod
cp Boulder/Stream.pm blib/lib/Boulder/Stream.pm
cp Boulder/Unigene.pm blib/lib/Boulder/Unigene.pm
cp Boulder/XML.pm blib/lib/Boulder/XML.pm
cp Boulder/String.pm blib/lib/Boulder/String.pm
cp Boulder/Genbank.pm blib/lib/Boulder/Genbank.pm
cp Boulder/Store.pm blib/lib/Boulder/Store.pm
cp Stone/Cursor.pm blib/lib/Stone/Cursor.pm
cp Boulder/Medline.pm blib/lib/Boulder/Medline.pm
Manifying blib/man3/Boulder::Swissprot.3
Manifying blib/man3/Boulder::Genbank.3
Manifying blib/man3/Boulder::Blast::WU.3
Manifying blib/man3/Boulder::Blast::NCBI.3
Manifying blib/man3/Boulder::Omim.3
Manifying blib/man3/Boulder::Blast.3
Manifying blib/man3/Stone::GB_Sequence.3
Manifying blib/man3/Stone.3
Manifying blib/man3/Boulder.3
Manifying blib/man3/Boulder::Store.3
Manifying blib/man3/Stone::Cursor.3
Manifying blib/man3/Boulder::Unigene.3
Manifying blib/man3/Boulder::Stream.3
Manifying blib/man3/Boulder::XML.3
Manifying blib/man3/Boulder::Medline.3
15 root@nuxi# make test
PERL_DL_NONLAZY=1 /nau/share/packages/perl5.6/bin/perl -Iblib/arch -Iblib/lib -I/nau/share/packages/perl5.6/lib/5.6.1/sun4-solaris -I/nau/share/packages/perl5.6/lib/5.6.1 -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/store.............dubious
Test returned status 0 (wstat 139, 0x8b)
test program seems to have generated a core
t/stream............ok 20/20
Failed Test Status Wstat Total Fail Failed List of Failed
=======
t/store.t 0 139 ?? ?? % ??
Failed 1/2 test scripts, 50.00% okay. 0/20 subtests failed, 100.00% okay.
*** Error code 29
make: Fatal error: Command failed for target `test_dynamic'
16 root@nuxi# file core
core: ELF 32-bit MSB core file SPARC Version 1, from 'perl'
17 root@nuxi# diff store.t t/store.t
5d4
< use Devel::Peek; # added by jdc
64,66d62
< # jdc added
< Dump($store);
<
18 root@nuxi# gdb /nau/share/packages/perl5.6/bin/perl
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "sparc-sun-solaris2.6"...
(gdb)
r -I/nau/share/packages/perl5.6/lib/5.6.1/store.ts/perl5.6/lib/5.6.1/sun4-sola
Starting program: /nau/share/packages/perl5.6/bin/perl -Iblib/arch -Iblib/lib -I/nau/share/packages/perl5.6/lib/5.6.1/sun4-solaris -I/nau/share/packages/perl5.6/lib/5.6.1 store.t
1..29
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
ok 7
ok 8
ok 9
ok 10
SV = RV(0x100450) at 0x105444
REFCNT = 1
FLAGS = (PADBUSY,PADMY,ROK)
RV = 0xebebc
SV = PVHV(0x24d918) at 0xebebc
REFCNT = 1
FLAGS = (OBJECT,SHAREKEYS)
IV = 21
NV = 0
STASH = 0x11794c "Boulder::Store"
ARRAY = 0xf2f38 (0:14, 1:15, 2:3)
hash quality = 128.8%
KEYS = 21
FILL = 18
MAX = 31
RITER = -1
EITER = 0x0
Elt "dbrecno" HASH = 0x69652c0
SV = RV(0x100438) at 0xebf88
REFCNT = 1
FLAGS = (ROK)
RV = 0xf79ac
SV = PVMG(0x1d5930) at 0xf79ac
REFCNT = 2
FLAGS = (OBJECT,IOK,pIOK)
IV = 996840
NV = 0
PV = 0
STASH = 0x1b8fec "DB_File"
Elt "subrec_end" HASH = 0xbed836c1
SV = PV(0x129c90) at 0x25c03c
REFCNT = 1
FLAGS = (POK,pPOK)
PV = 0x25a0a8 "}"\0
CUR = 1
LEN = 2
Elt "query_records" HASH = 0xce3aa1a1
SV = NULL(0x0) at 0x25bfdc
REFCNT = 1
FLAGS = ()
Program received signal SIGSEGV, Segmentation fault.
0x78290 in Perl_sv_2pv (sv=0x2966ac, lp=0xeffff51c) at sv.c:2118
2118 if (SvAMAGIC(sv) && (tmpstr=AMG_CALLun(sv,string)) &&
(gdb) where
#0 0x78290 in Perl_sv_2pv (sv=0x2966ac, lp=0xeffff51c) at sv.c:2118
#1 0x67e88 in Perl_hv_fetch_ent (hv=0x244170, keysv=0x2966ac, lval=1, hash=0)
at hv.c:292
#2 0x70cdc in Perl_pp_helem () at pp_hot.c:1564
#3 0x6c3f0 in Perl_runops_standard () at run.c:27
#4 0x24378 in S_run_body (oldscope=1) at perl.c:1448
#5 0x23fec in perl_run (my_perl=0x0) at perl.c:1368
#6 0x214e0 in main (argc=0, argv=0xeffff82c, env=0xeffff848) at perlmain.c:52
(gdb) l
2113 }
2114 }
2115 if (SvTHINKFIRST(sv)) {
2116 if (SvROK(sv)) {
2117 SV* tmpstr;
2118 if (SvAMAGIC(sv) && (tmpstr=AMG_CALLun(sv,string)) &&
2119 (SvRV(tmpstr) != SvRV(sv)))
2120 return SvPV(tmpstr,*lp);
2121 sv = (SV*)SvRV(sv);
2122 if (!sv)
(gdb) q
The program is running. Exit anyway? (y or n) y
20 root@nuxi# perl -d -Iblib/arch -Iblib/lib -I/nau/share/packages/perl5.6/lib/5.6.1/sun4-solaris -I/nau/share/packages/perl5.6/lib/5.6.1 t/store.t
Default die handler restored.
Loading DB routines from perl5db.pl version 1.07
Editor support available.
Enter h or `h h' for help, or `man perldebug' for more help.
main::(t/store.t:16): my($s,@s,$store);
DB<1> c
1..29
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
ok 7
ok 8
ok 9
ok 10
ok 11
ok 12
ok 13
ok 14
ok 15
ok 16
ok 17
ok 18
ok 19
ok 20
ok 21
ok 22
ok 23
ok 24
ok 25
ok 26
ok 27
ok 28
ok 29
Debugged program terminated. Use q to quit or R to restart,
use O inhibit_exit to avoid stopping after program termination,
h q, h R or h O to get additional info.
DB<1> q
21 root@nuxi# perl -d -Iblib/arch -Iblib/lib -I/nau/share/packages/perl5.6/lib/5.6.1/sun4-solaris -I/nau/share/packages/perl5.6/lib/5.6.1 store.t
Default die handler restored.
Loading DB routines from perl5db.pl version 1.07
Editor support available.
Enter h or `h h' for help, or `man perldebug' for more help.
main::(store.t:17): my($s,@s,$store);
DB<1> c
1..29
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
ok 7
ok 8
ok 9
ok 10
SV = PVMG(0x3e7c88) at 0x3b16b4
REFCNT = 1
FLAGS = (PADBUSY,PADMY,ROK)
IV = 0
NV = 0
RV = 0x3e3f5c
SV = PVHV(0x3d8ea8) at 0x3e3f5c
REFCNT = 1
FLAGS = (OBJECT,SHAREKEYS)
IV = 21
NV = 0
STASH = 0x20a2d0 "Boulder::Store"
ARRAY = 0x3e59d8 (0:14, 1:15, 2:3)
hash quality = 128.8%
KEYS = 21
FILL = 18
MAX = 31
RITER = -1
EITER = 0x0
Elt "dbrecno" HASH = 0x69652c0
SV = PVMG(0x3e6218) at 0x3db0e4
REFCNT = 1
FLAGS = (ROK)
IV = 0
NV = 0
RV = 0x3e5664
SV = PVMG(0x3e7bc8) at 0x3e5664
REFCNT = 2
FLAGS = (OBJECT,IOK,pIOK)
IV = 4092240
NV = 0
PV = 0
STASH = 0x2f3730 "DB_File"
Elt "subrec_end" HASH = 0xbed836c1
SV = PV(0x400948) at 0x4022d4
REFCNT = 1
FLAGS = (POK,pPOK)
PV = 0x3e5e98 "}"\0
CUR = 1
LEN = 2
Elt "query_records" HASH = 0xce3aa1a1
SV = NULL(0x0) at 0x3db0cc
REFCNT = 1
FLAGS = ()
ok 11
ok 12
ok 13
ok 14
ok 15
ok 16
ok 17
ok 18
ok 19
ok 20
ok 21
ok 22
ok 23
ok 24
ok 25
ok 26
ok 27
ok 28
ok 29
Debugged program terminated. Use q to quit or R to restart,
use O inhibit_exit to avoid stopping after program termination,
h q, h R or h O to get additional info.
DB<1> q
script done on Mon Jan 15 13:13:42 2001
[Please do not change anything below this line]
-----------------------------------------------------------------
---
Flags:
category=core
severity=critical
---
This perlbug was built using Perl v5.6.1 - Sat Jan 6 20:30:11 MST 2001
It is being executed now by Perl v5.6.1 - Wed Jan 3 20:01:12 MST 2001.
Site configuration information for perl v5.6.1:
Configured by root at Wed Jan 3 20:01:12 MST 2001.
Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
Platform:
osname=solaris, osvers=2.6, archname=sun4-solaris
uname='sunos nuxi 5.6 generic_105181-23 sun4u sparc sunw,ultra-1 '
config_args='-Dprefix=/nau/share/packages/perl5.6.1 -Ubincompat5005'
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 ='-I /nau/share/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-g -O',
cppflags='-I /nau/share/include'
ccversion='Sun WorkShop 6 2000/04/07 C 5.1', gccversion='', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=8, usemymalloc=y, prototype=define
Linker and Libraries:
ld='cc', ldflags =' '
libpth=/nau/share/lib /nau/share/packages/SUNWspro/SC4.2/lib /lib /usr/lib /usr/ccs/lib
libs=-lsocket -lnsl -lgdbm -ldb -ldl -lm -lc -lcrypt -lsec
perllibs=-lsocket -lnsl -ldl -lm -lc -lcrypt -lsec
libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
cccdlflags='-KPIC', lddlflags='-G'
Locally applied patches:
v5.6.1-TRIAL1
---
@INC for perl v5.6.1:
/nau/share/packages/perl5.6.1/lib/5.6.1/sun4-solaris
/nau/share/packages/perl5.6.1/lib/5.6.1
/nau/share/packages/perl5.6.1/lib/site_perl/5.6.1/sun4-solaris
/nau/share/packages/perl5.6.1/lib/site_perl/5.6.1
/nau/share/packages/perl5.6.1/lib/site_perl
.
---
Environment for perl v5.6.1:
HOME=/
LANG (unset)
LANGUAGE (unset)
LD_LIBRARY_PATH=/nau/share/SUNWspro/lib:/nau/share/packages/SUNWspro/SC4.2:/nau/share/lib:/nau/local/lib:/usr/dt/lib:/usr/openwin/lib:/usr/X/lib:/usr/ccs/lib:/usr/lib:/opt/app/oracle/product/8.0.5/lib
LOGDIR (unset)
PATH=/nau/share/packages/perl5.6/bin:/nau/share/SUNWspro/bin:/nau/local/etc:/nau/share/etc:/nau/local/bin:/nau/share/bin:/nau/share/sbin:/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/openwin/bin:/usr/ccs/bin:/nau/share/packages/jdk/java/bin:/nau/share/packages/tetex/bin:/nau/local/harvest/bin:/nau/local/harvest/lib:/nau/local/harvest/lib/gatherer:/nau/local/harvest/lib/broker:/nau/local/bin/emacs/bin:/opt/app/oracle/product/8.0.5/bin
PERL_BADLANG (unset)
SHELL=/bin/csh
-
[ID 20010115.011] Perl 5.6.1-TRAIL1 core dumps in Boulder::Store
by root