Skip Menu |
 

This queue is for tickets about the version CPAN distribution.

Report information
The Basics
Id: 15254
Status: resolved
Priority: 0/
Queue: version

People
Owner: jpeacock [...] cpan.org
Requestors: tim.pillsbury [...] cingular.com
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: 0.49
Fixed in: (no value)

Attachments
version-0.49 on AIX 5.1.doc



Subject: fails tests on AIX 5.1
Download (untitled) / with headers
text/plain 4.7k
(Getting failure on 'CPAN-style versions' test in version-0.49) (relevant excerpt follows) # testing CPAN-style versions dubious Test returned status -1 (wstat 139, 0x8b) DIED. FAILED tests 86-107 ################################################################# /CPAN/Language_Extensions>uname -a AIX prc-srv-3 1 5 0001BCBF4C00 ################################################################# /CPAN/Language_Extensions>perl -v This is perl, v5.8.7 built for aix-thread-multi ################################################################# (Following is the full text from the failure) removing version-0.49 /bin/rm -rf version-0.49 extracting code from version-0.49.tar.gz gzcat version-0.49.tar.gz | tar xf - creating version-0.49/Makefile cd version-0.49 && export MAKEFLAGS=&&export MFLAGS=&&time perl Build.PL Creating custom builder _build/lib/version/Builder.pm in _build/lib/version Checking whether your kit is complete... Looks good Creating new 'Build' script for 'version' version '0.49' real 0m1.36s user 0m0.76s sys 0m0.34s compiling version-0.49 cd version-0.49 && export MAKEFLAGS=&&export MFLAGS=&&time ./Build cc_r -I./vutil -I/opt/app/perl/testbuild/lib/5.8.7/aix-thread-multi/CORE -c -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=-1 -qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -I/usr/local/include -q32 -D_LARGE_FILES -qlonglong -O -o ./vutil/vutil.o ./vutil/vutil.c lib/version.pm -> blib/lib/version.pm lib/version/vxs.pm -> blib/lib/version/vxs.pm lib/version/vxs.xs -> lib/version/vxs.c /opt/app/perl/testbuild/bin/perl "-I/opt/app/perl/testbuild/lib/5.8.7/aix-thread-multi" "-I/opt/app/perl/testbuild/lib/5.8.7" "/opt/app/perl/testbuild/lib/5.8.7/ExtUtils/xsubpp" -noprototypes -typemap "/opt/app/perl/testbuild/lib/5.8.7/ExtUtils/typemap" "lib/version/vxs.xs"cc_r -I./vutil -I/opt/app/perl/testbuild/lib/5.8.7/aix-thread-multi/CORE -c -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=-1 -qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -I/usr/local/include -q32 -D_LARGE_FILES -qlonglong -O -o lib/version/vxs.o lib/version/vxs.c ExtUtils::Mkbootstrap::Mkbootstrap('lib/version/vxs') ExtUtils::Mksymlists::Mksymlists('lib/version/vxs') xlc_r -bhalt:4 -bexpall -G -bnoentry -lpthreads -lc -L/usr/local/lib -o blib/arch/auto/version/vxs/vxs.so lib/version/vxs.o ./vutil/vutil.o lib/version.pod -> blib/lib/version.pod Manifying blib/lib/version.pod -> blib/libdoc/version.3 real 0m5.48s user 0m3.52s sys 0m1.14s cd version-0.49 && export MAKEFLAGS=&&export MFLAGS=&&time ./Build test t/01base.......# Tests with base class # tests with bare numbers # tests with quoted numbers # tests with stringify # test illegal formats # tests with self # tests with non-objects # tests with objects # numeric tests with non-objects # numeric tests with objects # numeric tests with numbers # Tests with extended decimal versions # tests with alpha-style non-objects # numeric tests with alpha-style non-objects # tests with alpha-style objects # tests with alpha-style objects # tests with alpha-style objects with same subversion # test implicit [in]equality # forbidden operations # testing qv # create new from existing version # testing CVS Revision # testing CPAN-style versions dubious Test returned status -1 (wstat 139, 0x8b) DIED. FAILED tests 80-96 Failed 17/96 tests, 82.29% okay t/02derived....# Tests with empty derived class Subroutine main::qv redefined at t/02derived.t line 18. # tests with bare numbers # tests with quoted numbers # tests with stringify # test illegal formats # tests with self # tests with non-objects # tests with objects # numeric tests with non-objects # numeric tests with objects # numeric tests with numbers # Tests with extended decimal versions # tests with alpha-style non-objects # numeric tests with alpha-style non-objects # tests with alpha-style objects # tests with alpha-style objects # tests with alpha-style objects with same subversion # test implicit [in]equality # forbidden operations # testing qv # create new from existing version # testing CVS Revision # testing CPAN-style versions dubious Test returned status -1 (wstat 139, 0x8b) DIED. FAILED tests 86-107 Failed 22/107 tests, 79.44% okay Failed Test Stat Wstat Total Fail Failed List of Failed ------------------------------------------------------------------------------- t/01base.t -1 139 96 34 35.42% 80-96 t/02derived.t -1 139 107 44 41.12% 86-107 Failed 2/2 test scripts, 0.00% okay. 39/203 subtests failed, 80.79% okay. real 0m3.71s user 0m1.18s sys 0m1.39s Gmake[2]: *** [test] Error 255 Gmake[2]: Leaving directory `/roaming/clearcase/vobs/perlbuild/CPAN/Language_Extensions' Gmake[1]: *** [all] Error 2 Gmake[1]: Leaving directory `/roaming/clearcase/vobs/perlbuild/CPAN/Language_Extensions' Gmake: *** [LANG_EXTS.make] Error 2
Download (untitled) / with headers
text/plain 825b
[guest - Sun Oct 23 22:02:22 2005]: Show quoted text
> # testing CPAN-style versions > dubious > Test returned status -1 (wstat 139, 0x8b) > DIED. FAILED tests 80-96 > Failed 17/96 tests, 82.29% okay
I don't have access to AIX 5.1 at the moment, so I am going to need some help to track this down. I do know that xlc is one of the more, how shall I say this, /compulsive/ compilers. I don't see anything in that code path that is not strict ANSI, though. Is there any chance you can build a debugging Perl (-D"optimize=-g") so that you can can get a backtrace of that core file? I'm going to see if HP is offering an AIX 5.1 box through their TestDrive program. Show quoted text
> t/02derived....# Tests with empty derived class > Subroutine main::qv redefined at t/02derived.t line 18.
This I fixed (it's just a warning). TIA John
From: tim.pillsbury [...] cingular.com
Thank you, I should be able to do that today. How shall I provide the core file to you? Should I just attach it in this ticketing system? [JPEACOCK - Mon Oct 24 06:44:47 2005]: Show quoted text
> [guest - Sun Oct 23 22:02:22 2005]: >
> > # testing CPAN-style versions > > dubious > > Test returned status -1 (wstat 139, 0x8b) > > DIED. FAILED tests 80-96 > > Failed 17/96 tests, 82.29% okay
> > I don't have access to AIX 5.1 at the moment, so I am going to need > some > help to track this down. I do know that xlc is one of the more, how > shall I say this, /compulsive/ compilers. I don't see anything in > that > code path that is not strict ANSI, though. Is there any chance you > can > build a debugging Perl (-D"optimize=-g") so that you can can get a > backtrace of that core file? > > I'm going to see if HP is offering an AIX 5.1 box through their > TestDrive program. >
> > t/02derived....# Tests with empty derived class > > Subroutine main::qv redefined at t/02derived.t line 18.
> > This I fixed (it's just a warning). > > TIA > > John
Download (untitled) / with headers
text/plain 607b
[guest - Mon Oct 24 12:53:10 2005]: Show quoted text
> Thank you, I should be able to do that today. How shall I provide the > core file to you? Should I just attach it in this ticketing system?
The core itself won't be much help to me (without a comparable AIX box myself). Can you get a backtrace (so I know where it is going wonky)? Does AIX come with a debugger (like gdb in the open source world)? I've got an AIX 5.1 box I am trying to bring back to life. Did you build Perl yourself or did you install it from the freeware site? Can you send me the contents of 'perl -V' so I can build a comparable Perl? John
From: tim.pillsbury [...] cingular.com
Thank you, I should be able to do that today. How shall I provide the core file to you? Should I just attach it in this ticketing system? [JPEACOCK - Mon Oct 24 06:44:47 2005]: Show quoted text
> [guest - Sun Oct 23 22:02:22 2005]: >
> > # testing CPAN-style versions > > dubious > > Test returned status -1 (wstat 139, 0x8b) > > DIED. FAILED tests 80-96 > > Failed 17/96 tests, 82.29% okay
> > I don't have access to AIX 5.1 at the moment, so I am going to need > some > help to track this down. I do know that xlc is one of the more, how > shall I say this, /compulsive/ compilers. I don't see anything in > that > code path that is not strict ANSI, though. Is there any chance you > can > build a debugging Perl (-D"optimize=-g") so that you can can get a > backtrace of that core file? > > I'm going to see if HP is offering an AIX 5.1 box through their > TestDrive program. >
> > t/02derived....# Tests with empty derived class > > Subroutine main::qv redefined at t/02derived.t line 18.
> > This I fixed (it's just a warning). > > TIA > > John
From: tim.pillsbury [...] cingular.com
Download (untitled) / with headers
text/plain 2.6k
AIX has a debugger named xldb, and I also should be able to provide a backtrace once I've finished building a debuggable Perl, here's my current perl -V: Summary of my perl5 (revision 5 version 8 subversion 7) configuration: Platform: osname=aix, osvers=5.1.0.0, archname=aix-thread-multi uname='aix prc-srv-3 1 5 0001bcbf4c00 ' config_args='-d -e' hint=previous, useposix=true, d_sigaction=define usethreads=define use5005threads=undef useithreads=define usemultiplicity=define useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc_r', ccflags ='-D_ALL_SOURCE -D_ANSI_C_SOURCE - D_POSIX_SOURCE -qmaxmem=-1 -qnoansialias -DUSE_NATIVE_DLOPEN - DNEED_PTHREAD_INIT -I/usr/local/include -q32 -D_LARGE_FILES - qlonglong', optimize='-O', cppflags='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=- 1 -qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT - I/usr/local/include -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE - qmaxmem=-1 -qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT - I/usr/local/include -q32 -D_LARGE_FILES -qlonglong' ccversion='5.0.2.0', gccversion='', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='xlc_r', ldflags =' -brtl -bdynamic -bmaxdata:0x80000000 - L/usr/local/lib -b32' libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib libs=-lbind -lnsl -ldbm -ldl -lld -lm -lcrypt -lpthreads -lc -lbsd perllibs=-lbind -lnsl -ldl -lld -lm -lcrypt -lpthreads -lc -lbsd libc=/lib/libc.a, so=a, useshrplib=false, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_aix.xs, dlext=so, d_dlsymun=undef, ccdlflags=' - bE: /opt/app/perl/testbuild/lib/5.8.7/aix-thread-multi/CORE/perl.exp - bE:/opt/app/perl/testbuild/lib/5.8.7/aix-thread-multi/CORE/perl.exp' cccdlflags=' ', lddlflags='-bhalt:4 -bexpall -G -bnoentry - lpthreads -lc -L/usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_CONTEXT Built under aix Compiled at Oct 24 2005 00:51:18 @INC: /opt/app/perl/testbuild/lib/5.8.7/aix-thread-multi /opt/app/perl/testbuild/lib/5.8.7 /opt/app/perl/testbuild/lib/site_perl/5.8.7/aix-thread-multi /opt/app/perl/testbuild/lib/site_perl/5.8.7 /opt/app/perl/testbuild/lib/site_perl .
Download (untitled) / with headers
text/plain 477b
[guest - Mon Oct 24 13:10:24 2005]: Show quoted text
> AIX has a debugger named xldb, and I also should be able to provide a > backtrace once I've finished building a debuggable Perl, here's my > current perl -V:
I got my AIX box back up and running and it appears that I don't have xlc installed (I'm not even sure I have a license for it). It doesn't appear that IBM has anything comparable to HP's TestDrive servers, so I'm stuck with whatever information you are able to give me. John
From: tim.pillsbury [...] cingular.com
I'll have a debuggable Perl later today and will get my info to you ASAP. Thanks a lot, -Tim
From: tim.pillsbury [...] cingular.com
The failure occurs in vutil/vutil.c at line 391. Attaching a word document with relevant details.
Download version-0.49 on AIX 5.1.doc
application/msword 89.5k

Message body not shown because it is not plain text.

Date: Tue, 25 Oct 2005 07:20:47 -0400
From: John Peacock <jpeacock [...] rowman.com>
To: bug-version [...] rt.cpan.org
Subject: Re: [cpan #15254] fails tests on AIX 5.1
RT-Send-Cc:
Download (untitled) / with headers
text/plain 782b
Guest via RT wrote: Show quoted text
> The failure occurs in vutil/vutil.c at line 391. > Attaching a word document with relevant details.
Oh, man, that is the last place I'd expect to have a problem! Can you tell me what on earth AIX expects pow() to do? At least on Linux that function has the signature of: double pow(double x, double y); Can you adjust vutil/vutil.c to look like this instead? const int denom = (int)pow((double)10,(double)(3-width)); If that fails, try this: const int denom = (int)Perl_pow(10,(3-width)); which might choose the correct pow/powl implementation at Configure time. TIA John -- John Peacock Director of Information Research and Technology Rowman & Littlefield Publishing Group 4720 Boston Way Lanham, MD 20706 301-459-3366 x.5010 fax 301-429-5747
Date: Tue, 25 Oct 2005 08:34:58 -0400
From: John Peacock <jpeacock [...] rowman.com>
To: bug-version [...] rt.cpan.org
Subject: Re: [cpan #15254] fails tests on AIX 5.1
RT-Send-Cc:
Download (untitled) / with headers
text/plain 863b
Guest via RT wrote: Show quoted text
> The failure occurs in vutil/vutil.c at line 391.
Actually, ignore my previous suggestion. The value of denom can only be 10 or 100, so there is really no point in using pow() at all. Apply this patch and see if it works for you: --- vutil/vutil.c (revision 428) +++ vutil/vutil.c (local) @@ -388,7 +388,7 @@ { digit = SvIV(*av_fetch(av, i, 0)); if ( width < 3 ) { - const int denom = (int)pow(10,(3-width)); + const int denom = (width == 2 ? 10 : 100); const div_t term = div((int)PERL_ABS(digit),denom); Perl_sv_catpvf(aTHX_ sv, "%0*d_%d", width, term.quot, term.rem); } John -- John Peacock Director of Information Research and Technology Rowman & Littlefield Publishing Group 4720 Boston Way Lanham, MD 20706 301-459-3366 x.5010 fax 301-429-5747
From: tim.pillsbury [...] cingular.com
Download (untitled) / with headers
text/plain 1.9k
Beautiful, that did it: [reba]/roaming/clearcase/vobs/perlbuild/CPAN/Language_Extensions/versio n-0.49>./Build test t/01base.......ok 1/96# Tests with base class # tests with bare numbers # tests with quoted numbers # tests with stringify # test illegal formats # tests with self # tests with non-objects # tests with objects # numeric tests with non-objects # numeric tests with objects # numeric tests with numbers # Tests with extended decimal versions # tests with alpha-style non-objects # numeric tests with alpha-style non-objects # tests with alpha-style objects # tests with alpha-style objects # tests with alpha-style objects with same subversion # test implicit [in]equality # forbidden operations # testing qv # create new from existing version # testing CVS Revision # testing CPAN-style versions # Replacement UNIVERSAL::VERSION tests # Tests with v-strings # Tests with real-world (malformed) data t/01base.......ok t/02derived....ok 1/107# Tests with empty derived class Subroutine main::qv redefined at t/02derived.t line 18. # tests with bare numbers # tests with quoted numbers # tests with stringify # test illegal formats # tests with self # tests with non-objects # tests with objects # numeric tests with non-objects # numeric tests with objects # numeric tests with numbers # Tests with extended decimal versions # tests with alpha-style non-objects # numeric tests with alpha-style non-objects # tests with alpha-style objects # tests with alpha-style objects # tests with alpha-style objects with same subversion # test implicit [in]equality # forbidden operations # testing qv # create new from existing version # testing CVS Revision # testing CPAN-style versions # Replacement UNIVERSAL::VERSION tests # Tests with v-strings # Tests with real-world (malformed) data # tests with bad subclass t/02derived....ok All tests successful. Files=2, Tests=203, 1 wallclock secs ( 0.57 cusr + 0.42 csys = 0.99 CPU) Thanks a lot John, -Tim
Date: Tue, 25 Oct 2005 12:16:20 -0400
From: John Peacock <jpeacock [...] rowman.com>
To: bug-version [...] rt.cpan.org
Subject: Re: [cpan #15254] fails tests on AIX 5.1
RT-Send-Cc:
Download (untitled) / with headers
text/plain 487b
Guest via RT wrote: Show quoted text
> > Beautiful, that did it:
Cool. I'll commit that to my repository and it will be in the next release. I'll also submit a patch to Perl5Porters, since this code is used in 5.9.x and hence will be in 5.10.0. Thanks very much for making it possible to debug this... John -- John Peacock Director of Information Research and Technology Rowman & Littlefield Publishing Group 4501 Forbes Boulevard Suite H Lanham, MD 20706 301-459-3366 x.5010 fax 301-429-5748
From: tim.pillsbury [...] cingular.com
Completely my pleasure to help, thank you -Tim
Download (untitled) / with headers
text/plain 248b
The uploaded file version-0.50.tar.gz has entered CPAN as file: $CPAN/authors/id/J/JP/JPEACOCK/version-0.50.tar.gz size: 32356 bytes md5: ac3cfa9ab5d82f179ddb276508699cce This includes the fix for the reported problem on AIX. Thanks


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.