Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

perl 5.21.2 test -- PASS after modifications of tests -- AIX 5300-12-05-1140 and xlC v11

2 views
Skip to first unread message

Michael Felt

unread,
Aug 11, 2014, 3:51:12 AM8/11/14
to perl5-...@perl.org
AIX 5300-12-05-1140 (last standard release of AIX 5.3)
xlC v11 (  vac.C                    11.1.0.13    C     F    IBM XL C Compiler)

The system is about as "clean" as it can be, and still have a compiler installed.

root@inlp02:[/home/root]rpm -qa
cdrecord-1.9-7
mkisofs-1.13-4
AIX-rpm-5.3.12.1-1

root@inlp02:[/home/root]lslpp -L | grep openssl
  openssl.base            0.9.8.1101    C     F    Open Secure Socket Layer
  openssl.man.en_US       0.9.8.1101    C     F    Open Secure Socket Layer

built using:
./Configure \
    -es \
    -Dcc=cc_r \
    -Duseshrplib \
    -Dusethreads \
    -Dusedevel \
    -Dprefix=/opt/perl5-dev

make; make test

After getting the WHOA message a couple of times - I learned that removing the -d let me actually answer the question
(or does -Dusedevel override that - I am expecting only extra messages).

In short, the test results for AIX 5.3 are the same as with perl v5.20.0

Failed 3 tests out of 2229, 99.87% okay.
        ../cpan/IO-Socket-IP/t/02local-server-v4.t
        ../cpan/IO-Socket-IP/t/03local-cross-v4.t
        ../cpan/IO-Socket-IP/t/05local-server-v6.t
### Since not all tests were successful, you may want to run some of
### them individually and examine any diagnostic messages they produce.
### See the INSTALL document's section on "make test".
### You have a good chance to get more information by running
###   ./perl harness
### in the 't' directory since most (>=80%) of the tests succeeded.
### You may have to set your dynamic library search path,
### LIBPATH, to point to the build directory:
###   setenv LIBPATH `pwd`:$LIBPATH; cd t; ./perl harness
###   LIBPATH=`pwd`:$LIBPATH; export LIBPATH; cd t; ./perl harness
###   export LIBPATH=`pwd`:$LIBPATH; cd t; ./perl harness
### for csh-style shells, like tcsh; or for traditional/modern
### Bourne-style shells, like bash, ksh, and zsh, respectively.
u=4.18  s=1.27  cu=366.82  cs=39.77  scripts=2229  tests=704486
make: 1254-004 The error code from the last command is 1.

After adding and keeping the LocalPort numbers different (9002 of test 02*, 9003 for test 03*, etc)

root@inlp02:[/data/perl-5.21.2]grep Local cpan/IO-Socket-IP/t/0[235]*
cpan/IO-Socket-IP/t/02local-server-v4.t:      LocalHost => "127.0.0.1",
cpan/IO-Socket-IP/t/02local-server-v4.t:      LocalPort => 9002,

cpan/IO-Socket-IP/t/03local-cross-v4.t:      LocalHost => "127.0.0.1",
cpan/IO-Socket-IP/t/03local-cross-v4.t:      LocalPort => 9003,

cpan/IO-Socket-IP/t/05local-server-v6.t:      LocalHost => "::1",
cpan/IO-Socket-IP/t/05local-server-v6.t:      LocalPort => 9005,

(I'll do a diff -u next time)

root@inlp02:[/data/perl-5.21.2/t]./perl harness ../cpan/IO-Socket-IP/t/*.t
../cpan/IO-Socket-IP/t/00use.t ........................... ok  
../cpan/IO-Socket-IP/t/01local-client-v4.t ............... ok   
../cpan/IO-Socket-IP/t/02local-server-v4.t ............... ok   
../cpan/IO-Socket-IP/t/03local-cross-v4.t ................ ok   
../cpan/IO-Socket-IP/t/04local-client-v6.t ............... ok   
../cpan/IO-Socket-IP/t/05local-server-v6.t ............... ok   
../cpan/IO-Socket-IP/t/06local-cross-v6.t ................ skipped: Unable to bind to ::1
../cpan/IO-Socket-IP/t/10args.t .......................... ok   
../cpan/IO-Socket-IP/t/11sockopts.t ...................... ok  
../cpan/IO-Socket-IP/t/12port-fallback.t ................. ok  
../cpan/IO-Socket-IP/t/13addrinfo.t ...................... ok  
../cpan/IO-Socket-IP/t/14fileno.t ........................ ok  
../cpan/IO-Socket-IP/t/15io-socket.t ..................... ok  
../cpan/IO-Socket-IP/t/16v6only.t ........................ skipped: Unable to bind to ::1
../cpan/IO-Socket-IP/t/17gai-flags.t ..................... ok  
../cpan/IO-Socket-IP/t/18fdopen.t ........................ ok  
../cpan/IO-Socket-IP/t/19no-addrs.t ...................... ok   
../cpan/IO-Socket-IP/t/20subclass.t ...................... ok  
../cpan/IO-Socket-IP/t/21as-inet.t ....................... ok  
../cpan/IO-Socket-IP/t/30nonblocking-connect.t ........... ok  
../cpan/IO-Socket-IP/t/31nonblocking-connect-internet.t .. ok  
../cpan/IO-Socket-IP/t/99pod.t ........................... skipped: Test::Pod 1.00 required for testing POD
All tests successful.
Files=22, Tests=193, 10 wallclock secs ( 0.05 usr  0.02 sys +  0.87 cusr  0.12 csys =  1.06 CPU)
Result: PASS

Turned on IPv6 (using autoconf6) - and need more testing, sigh

Name  Mtu   Network     Address            Ipkts Ierrs    Opkts Oerrs  Coll
en1   1500  link#3      e6.2d.ca.89.5b.c    134220     0    41120     0     0
en1   1500  192.168.221 192.168.221.221     134220     0    41120     0     0
en1   1500  fe80::e42d:caff:fe89:5b0c       134220     0    41120     0     0
sit0  1480  link#4      192.168.221.221          0     0        0     0     0
sit0  1480  ::192.168.221.221                    0     0        0     0     0
lo0   16896 link#1                          267917     0   269516     0     0
lo0   16896 127         127.0.0.1           267917     0   269516     0     0
lo0   16896 ::1                             267917     0   269516     0     0


root@inlp02:[/data/perl-5.21.2/t]./perl harness ../cpan/IO-Socket-IP/t/*.t
../cpan/IO-Socket-IP/t/00use.t ........................... ok  
../cpan/IO-Socket-IP/t/01local-client-v4.t ............... ok   
../cpan/IO-Socket-IP/t/02local-server-v4.t ............... ok   
../cpan/IO-Socket-IP/t/03local-cross-v4.t ................ ok   
../cpan/IO-Socket-IP/t/04local-client-v6.t ............... ok   
../cpan/IO-Socket-IP/t/05local-server-v6.t ............... ok   
../cpan/IO-Socket-IP/t/06local-cross-v6.t ................ Cannot connect on PF_INET6 - Connection refused at t/06local-cross-v6.t line 20.
../cpan/IO-Socket-IP/t/06local-cross-v6.t ................ Dubious, test returned 79 (wstat 20224, 0x4f00)
No subtests run
../cpan/IO-Socket-IP/t/10args.t .......................... ok   
../cpan/IO-Socket-IP/t/11sockopts.t ...................... ok  
../cpan/IO-Socket-IP/t/12port-fallback.t ................. ok  
../cpan/IO-Socket-IP/t/13addrinfo.t ...................... ok  
../cpan/IO-Socket-IP/t/14fileno.t ........................ ok  
../cpan/IO-Socket-IP/t/15io-socket.t ..................... ok  
../cpan/IO-Socket-IP/t/16v6only.t ........................ ok  
../cpan/IO-Socket-IP/t/17gai-flags.t ..................... ok  
../cpan/IO-Socket-IP/t/18fdopen.t ........................ ok  
../cpan/IO-Socket-IP/t/19no-addrs.t ...................... ok   
../cpan/IO-Socket-IP/t/20subclass.t ...................... ok  
../cpan/IO-Socket-IP/t/21as-inet.t ....................... ok  
../cpan/IO-Socket-IP/t/30nonblocking-connect.t ........... ok  
../cpan/IO-Socket-IP/t/31nonblocking-connect-internet.t .. ok  
../cpan/IO-Socket-IP/t/99pod.t ........................... skipped: Test::Pod 1.00 required for testing POD

Test Summary Report
-------------------
../cpan/IO-Socket-IP/t/06local-cross-v6.t              (Wstat: 20224 Tests: 0 Failed: 0)
  Non-zero exit status: 79
  Parse errors: No plan found in TAP output
Files=22, Tests=200,  9 wallclock secs ( 0.05 usr  0.02 sys +  0.89 cusr  0.12 csys =  1.08 CPU)
Result: FAIL

BUT!!! This was easy - continuing the previous addition of LocalPort

root@inlp02:[/data/perl-5.21.2/t]grep Local ../cpan/IO-Socket-IP/t/0[2356]* 
../cpan/IO-Socket-IP/t/02local-server-v4.t:      LocalHost => "127.0.0.1",
../cpan/IO-Socket-IP/t/02local-server-v4.t:      LocalPort => 9002,
../cpan/IO-Socket-IP/t/03local-cross-v4.t:      LocalHost => "127.0.0.1",
../cpan/IO-Socket-IP/t/03local-cross-v4.t:      LocalPort => 9003,
../cpan/IO-Socket-IP/t/05local-server-v6.t:      LocalHost => "::1",
../cpan/IO-Socket-IP/t/05local-server-v6.t:      LocalPort => 9005,
../cpan/IO-Socket-IP/t/06local-cross-v6.t:eval { IO::Socket::IP->new( LocalHost => "::1" ) } or
../cpan/IO-Socket-IP/t/06local-cross-v6.t:      LocalHost => "::1",
../cpan/IO-Socket-IP/t/06local-cross-v6.t:      LocalPort => 9006,

And - PASS!

root@inlp02:[/data/perl-5.21.2/t]./perl harness ../cpan/IO-Socket-IP/t/*.t  
../cpan/IO-Socket-IP/t/00use.t ........................... ok  
../cpan/IO-Socket-IP/t/01local-client-v4.t ............... ok   
../cpan/IO-Socket-IP/t/02local-server-v4.t ............... ok   
../cpan/IO-Socket-IP/t/03local-cross-v4.t ................ ok   
../cpan/IO-Socket-IP/t/04local-client-v6.t ............... ok   
../cpan/IO-Socket-IP/t/05local-server-v6.t ............... ok   
../cpan/IO-Socket-IP/t/06local-cross-v6.t ................ ok   
../cpan/IO-Socket-IP/t/10args.t .......................... ok   
../cpan/IO-Socket-IP/t/11sockopts.t ...................... ok  
../cpan/IO-Socket-IP/t/12port-fallback.t ................. ok  
../cpan/IO-Socket-IP/t/13addrinfo.t ...................... ok  
../cpan/IO-Socket-IP/t/14fileno.t ........................ ok  
../cpan/IO-Socket-IP/t/15io-socket.t ..................... ok  
../cpan/IO-Socket-IP/t/16v6only.t ........................ ok  
../cpan/IO-Socket-IP/t/17gai-flags.t ..................... ok  
../cpan/IO-Socket-IP/t/18fdopen.t ........................ ok  
../cpan/IO-Socket-IP/t/19no-addrs.t ...................... ok   
../cpan/IO-Socket-IP/t/20subclass.t ...................... ok  
../cpan/IO-Socket-IP/t/21as-inet.t ....................... ok  
../cpan/IO-Socket-IP/t/30nonblocking-connect.t ........... ok  
../cpan/IO-Socket-IP/t/31nonblocking-connect-internet.t .. ok  
../cpan/IO-Socket-IP/t/99pod.t ........................... skipped: Test::Pod 1.00 required for testing POD
All tests successful.
Files=22, Tests=212,  8 wallclock secs ( 0.06 usr  0.02 sys +  0.88 cusr  0.12 csys =  1.08 CPU)

New test - LocalPort => 0 in all tests!!!

root@inlp02:[/data/perl-5.21.2/t]grep Local ../cpan/IO-Socket-IP/t/0[2356]* 
../cpan/IO-Socket-IP/t/02local-server-v4.t:      LocalHost => "127.0.0.1",
../cpan/IO-Socket-IP/t/02local-server-v4.t:      LocalPort => 0,
../cpan/IO-Socket-IP/t/03local-cross-v4.t:      LocalHost => "127.0.0.1",
../cpan/IO-Socket-IP/t/03local-cross-v4.t:      LocalPort => 0,
../cpan/IO-Socket-IP/t/05local-server-v6.t:      LocalHost => "::1",
../cpan/IO-Socket-IP/t/05local-server-v6.t:      LocalPort => 0,
../cpan/IO-Socket-IP/t/06local-cross-v6.t:eval { IO::Socket::IP->new( LocalHost => "::1" ) } or
../cpan/IO-Socket-IP/t/06local-cross-v6.t:      LocalHost => "::1",
../cpan/IO-Socket-IP/t/06local-cross-v6.t:      LocalPort => 0,

So - maybe this can be resolved in the perlcode by setting LocalPort to 0 (zero) when it is
not passed as an argument AND it is AIX 5.3.

root@inlp02:[/data/perl-5.21.2/t]./perl harness ../cpan/IO-Socket-IP/t/*.t
../cpan/IO-Socket-IP/t/00use.t ........................... ok  
../cpan/IO-Socket-IP/t/01local-client-v4.t ............... ok   
../cpan/IO-Socket-IP/t/02local-server-v4.t ............... ok   
../cpan/IO-Socket-IP/t/03local-cross-v4.t ................ ok   
../cpan/IO-Socket-IP/t/04local-client-v6.t ............... ok   
../cpan/IO-Socket-IP/t/05local-server-v6.t ............... ok   
../cpan/IO-Socket-IP/t/06local-cross-v6.t ................ ok   
../cpan/IO-Socket-IP/t/10args.t .......................... ok   
../cpan/IO-Socket-IP/t/11sockopts.t ...................... ok  
../cpan/IO-Socket-IP/t/12port-fallback.t ................. ok  
../cpan/IO-Socket-IP/t/13addrinfo.t ...................... ok  
../cpan/IO-Socket-IP/t/14fileno.t ........................ ok  
../cpan/IO-Socket-IP/t/15io-socket.t ..................... ok  
../cpan/IO-Socket-IP/t/16v6only.t ........................ ok  
../cpan/IO-Socket-IP/t/17gai-flags.t ..................... ok  
../cpan/IO-Socket-IP/t/18fdopen.t ........................ ok  
../cpan/IO-Socket-IP/t/19no-addrs.t ...................... ok   
../cpan/IO-Socket-IP/t/20subclass.t ...................... ok  
../cpan/IO-Socket-IP/t/21as-inet.t ....................... ok  
../cpan/IO-Socket-IP/t/30nonblocking-connect.t ........... ok  
../cpan/IO-Socket-IP/t/31nonblocking-connect-internet.t .. ok  
../cpan/IO-Socket-IP/t/99pod.t ........................... skipped: Test::Pod 1.00 required for testing POD
All tests successful.
Files=22, Tests=212,  7 wallclock secs ( 0.06 usr  0.02 sys +  0.90 cusr  0.12 csys =  1.10 CPU)



And, finally, ..., with IPv6 active...

root@inlp02:[/data/perl-5.21.2/t]./perl harness
...
All tests successful.
Files=2309, Tests=704565, 1314 wallclock secs (53.14 usr  5.63 sys + 362.22 cusr 44.95 csys = 465.94 CPU)
Result: PASS

On to a 64-bit test (never tried that before!!)

Michael

Michael Felt

unread,
Aug 11, 2014, 11:44:08 AM8/11/14
to perl5-...@perl.org

root@inlp02:[/data/perl-5.21.
2/t]grep Local ../cpan/IO-Socket-IP/t/0[2356]* 
../cpan/IO-Socket-IP/t/02local-server-v4.t:      LocalHost => "127.0.0.1",
../cpan/IO-Socket-IP/t/02local-server-v4.t:      LocalPort => 0,
../cpan/IO-Socket-IP/t/03local-cross-v4.t:      LocalHost => "127.0.0.1",
../cpan/IO-Socket-IP/t/03local-cross-v4.t:      LocalPort => 0,
../cpan/IO-Socket-IP/t/05local-server-v6.t:      LocalHost => "::1",
../cpan/IO-Socket-IP/t/05local-server-v6.t:      LocalPort => 0,
../cpan/IO-Socket-IP/t/06local-cross-v6.t:eval { IO::Socket::IP->new( LocalHost => "::1" ) } or
../cpan/IO-Socket-IP/t/06local-cross-v6.t:      LocalHost => "::1",
../cpan/IO-Socket-IP/t/06local-cross-v6.t:      LocalPort => 0,

re: above and adding LocalPort => 0, to the tests.

I am thinking this may be "wrong" - to ONLY add LocalPort => 0, - in that there is an assumption that you do not need to care what the LocalPort value is, and not setting it "implies" it is zero already.

However, as an improvement - "testing" both implicit and explicit conditions re: LocalPort and does this result in connection success or not - should be considered as this may help determine the cause of a problem in an application.

In terms of "support", or deeming it a perl bug, or not - I would  say a change in perl - basically to only correct an environmental issue - is an option - but not a bug. In this specific case (AIX 5.3 TL12, TL7) considering AIX 5.3 is frozen in time it may be better, in terms of perl, to document it as a known issue, and the workaround is to specify, explicitly, that LocalPort => 0 is needed.

my two cents.

Michael Felt

unread,
Aug 11, 2014, 11:56:30 AM8/11/14
to perl5-...@perl.org
64-bit tests:

Comment: I tried saying yes to "long doubles". Futher down the Configure established that "long double" and "double" are equivalent - and I thought it said - "double float" ignored, or set back to "n". However, when it came to mod_fl, the Configure run broke:

*** You requested the use of long doubles but you do not seem to have
*** the following mathematical functions needed for long double support:
***     modfl
*** Please rerun Configure without -Duselongdouble and/or -Dusemorebits.
*** Cannot continue, aborting.

And, on the next run I was excited to see mod_fl is a nop on AIX
modfl() found.
I don't understand your modfl() at all.

Aside from this there was one test that failed, but was clearly an environment issue:

Failed 1 test out of 2236, 99.96% okay.
        op/threads.t

root@inlp02:[/data/perl-5.21.2/t]./perl harness op/threads.t  
op/threads.t .. 9/27 Out of memory!

ctrl-c

Change ulimits so that data == -1, as suggested in README.aix - however, the better way to do that is:

root@inlp02:[/home/root]chsec -f /etc/security/limits -s default -a data=-1

After that, all tests ran successfully (with the LocalPort => 0 additions)

root@inlp02:[/data/perl-5.21.2/t]./perl harness
All tests successful.
Files=2309, Tests=705104, 1437 wallclock secs (60.13 usr  7.81 sys + 423.47 cusr 38.45 csys = 529.86 CPU)
Result: PASS

Further testing with cflags optimize set to
-O2 -qarch=pwr4 -qtune=pwr7 ** Works


-O4 ... ** link problems
-O3 ... ** identical link problems
This I shall research and post updates when I have -O3 and more optimization working better.
(FYI - 172 tests fail, or +- 91% success)
0 new messages