On 8/20/2012 8:41 AM, Harry Jamieson wrote:
Environment:
IBM AIX 5.3.
Perl 5.8.8 now linked to its 64-bit libraries.
64-bit compiled test simple 0.98
64-bit compiled MakeMaker 6.48.

We didn't discover that IBM had shipped our AIX with Perl pointed to the 32-bit version until after we had already installed DBI, and now that we find that we must use DB2 instead of MySQL, we are forced to try to re-install everything under 64-bit. We have re-linked Perl to 64-bit and we were successful at re-installing test simple and makemaker under 64-bit. However, the make test for DBI hangs in a loop. Here is a trace (DBI_TRACE=2) showing two of the loops. The Makefile and make both looked good (I can send the lists from these if they would be helpful).

<----- execute_request
gofer receive_response
gofer response_needs_retransmit: retries disabled (retry_limit not set)
gofer response_needs_retransmit: retries disabled (retry_limit not set)
!! ERROR: '2000000000' 'fake error from do method induced by DBI_GOFER_RANDO M env var (50%); DBD::ExampleP::db do failed at /usr/DBI/DBI-1.622/blib/lib/DBI/
Gofer/Execute.pm line 329.' (err#91)
    <- do= undef at 86gofer_fail.t line 111
    !! ERROR: '2000000000' CLEARED by call to do method
-> do for DBD::Gofer::db (DBI::db=HASH(0x110770380)~0x11076fe40 'set foo=1')
 thr#11000bab0
-----> execute_request
    -> DBI->connect_cached(dbi:ExampleP:, , ****)
-> connect_cached in DBD::_::dr for DBD::ExampleP::dr (DBI::dr=HASH(0x11072f
4d0)~0x11072f530 '' 0 **** HASH(0x11076b4f0)) thr#11000bab0
    <- connect_cached= DBI::db=HASH(0x1107447d0) at DBI.pm line 658
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'RaiseError'
 1) thr#11000bab0
    <- STORE= 1 at DBI.pm line 710
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'PrintError'
 undef) thr#11000bab0
    <- STORE= 1 at DBI.pm line 710
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'AutoCommit'
 1) thr#11000bab0
    <- STORE= 1 at DBI.pm line 710
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'Executed' 0
) thr#11000bab0
    <- STORE= 1 at DBI.pm line 713
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'dbi_go_exec
ute_unique' 'DBI::Gofer::Execute|389218|fail=50%,do') thr#11000bab0
    <- STORE= 1 at DBI.pm line 713
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'PrintWarn'
undef) thr#11000bab0
    <- STORE= 1 at DBI.pm line 713
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'dbi_connect
_method' 'connect_cached') thr#11000bab0
    <- STORE= 1 at DBI.pm line 713
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'Username' 0
) thr#11000bab0
    <- STORE= 1 at DBI.pm line 713
-> connected for DBD::ExampleP::db (DBI::db=HASH(0x1107447d0)~0x110744780 'd
bi:ExampleP:' undef **** HASH(0x11076bf10)) thr#11000bab0
    <- connected= undef at DBI.pm line 720
    <- connect= DBI::db=HASH(0x1107447d0)
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'dbi_connect
_closure' CODE(0x1107706e0)) thr#11000bab0
    <- STORE= 1 at DBI.pm line 729
<> FETCH= HASH(0x110744930)2keys ('Callbacks' from cache) at Execute.pm line
 578
<> FETCH= HASH(0x110744930)2keys ('private_gofer_rand_fail_callbacks' from c
ache) at Execute.pm line 579
-> FETCH for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'CachedKids'
) thr#11000bab0
    <- FETCH= undef at Execute.pm line 221
    {{ do callback CODE(0x110744a00) being invoked
}} do callback CODE(0x110744a00) returned, actual method will not be called !! ERROR: 2000000000 'fake error from do method induced by DBI_GOFER_RANDOM
env var (50%)' (err#403)
    <- do= undef at Execute.pm line 329
    -> $DBI::err (*) FETCH from lasth=HASH
    <- $DBI::err= 2000000000
    -> $DBI::errstr (&) FETCH from lasth=HASH
<- $DBI::errstr= 'fake error from do method induced by DBI_GOFER_RANDOM env
var (50%)'
    -> $DBI::state (") FETCH from lasth=HASH
    <- $DBI::state= 'S1000'
-> FETCH for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'Executed')
thr#11000bab0
ERROR: 2000000000 'fake error from do method induced by DBI_GOFER_RANDOM
env var (50%)' (err#403)
    <- FETCH= '' at Execute.pm line 261
-> set_err for DBD::ExampleP::db (DBI::db=HASH(0x1107447d0)~0x110744780 unde
f undef) thr#11000bab0
    <- set_err= undef at Execute.pm line 234
<----- execute_request
gofer receive_response
gofer response_needs_retransmit: retries disabled (retry_limit not set)
gofer response_needs_retransmit: retries disabled (retry_limit not set)
!! ERROR: '2000000000' 'fake error from do method induced by DBI_GOFER_RANDO M env var (50%); DBD::ExampleP::db do failed at /usr/DBI/DBI-1.622/blib/lib/DBI/
Gofer/Execute.pm line 329.' (err#92)
    <- do= undef at 86gofer_fail.t line 111
    !! ERROR: '2000000000' CLEARED by call to do method
-> do for DBD::Gofer::db (DBI::db=HASH(0x110770380)~0x11076fe40 'set foo=1')
 thr#11000bab0
-----> execute_request
    -> DBI->connect_cached(dbi:ExampleP:, , ****)
-> connect_cached in DBD::_::dr for DBD::ExampleP::dr (DBI::dr=HASH(0x11072f
4d0)~0x11072f530 '' 0 **** HASH(0x110745090)) thr#11000bab0
    <- connect_cached= DBI::db=HASH(0x1107447d0) at DBI.pm line 658
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'RaiseError'
 1) thr#11000bab0
    <- STORE= 1 at DBI.pm line 710
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'PrintError'
 undef) thr#11000bab0
    <- STORE= 1 at DBI.pm line 710
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'AutoCommit'
 1) thr#11000bab0
    <- STORE= 1 at DBI.pm line 710
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'Executed' 0
) thr#11000bab0
    <- STORE= 1 at DBI.pm line 713
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'dbi_go_exec
ute_unique' 'DBI::Gofer::Execute|389218|fail=50%,do') thr#11000bab0
    <- STORE= 1 at DBI.pm line 713
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'PrintWarn'
undef) thr#11000bab0
    <- STORE= 1 at DBI.pm line 713
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'dbi_connect
_method' 'connect_cached') thr#11000bab0
    <- STORE= 1 at DBI.pm line 713
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'Username' 0
) thr#11000bab0
    <- STORE= 1 at DBI.pm line 713
-> connected for DBD::ExampleP::db (DBI::db=HASH(0x1107447d0)~0x110744780 'd
bi:ExampleP:' undef **** HASH(0x110775d60)) thr#11000bab0
    <- connected= undef at DBI.pm line 720
    <- connect= DBI::db=HASH(0x1107447d0)
-> STORE for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'dbi_connect
_closure' CODE(0x11076fd30)) thr#11000bab0
    <- STORE= 1 at DBI.pm line 729
<> FETCH= HASH(0x110744930)2keys ('Callbacks' from cache) at Execute.pm line
 578
<> FETCH= HASH(0x110744930)2keys ('private_gofer_rand_fail_callbacks' from c
ache) at Execute.pm line 579
-> FETCH for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'CachedKids'
) thr#11000bab0
    <- FETCH= undef at Execute.pm line 221
    {{ do callback CODE(0x110744a00) being invoked
    }} do callback CODE(0x110744a00) returned
-> do for DBD::ExampleP::db (DBI::db=HASH(0x1107447d0)~0x110744780 'set foo=
1' HASH(0x11076b1f0)) thr#11000bab0
    <- do= undef at Execute.pm line 329
    -> $DBI::err (*) FETCH from lasth=HASH
    <- $DBI::err= undef
    -> $DBI::errstr (&) FETCH from lasth=HASH
    <- $DBI::errstr= undef
    -> $DBI::state (") FETCH from lasth=HASH
    <- $DBI::state= ''
-> FETCH for DBD::ExampleP::db (DBI::db=HASH(0x110744780)~INNER 'Executed')
thr#11000bab0
    <- FETCH= 1 at Execute.pm line 261
-> set_err for DBD::ExampleP::db (DBI::db=HASH(0x1107447d0)~0x110744780 unde
f undef) thr#11000bab0
    <- set_err= undef at Execute.pm line 234

Harry Jamieson




I got past the hanging problem by running it over and over again until it went through. Now I get this....

        Test returned status -1 (wstat 139, 0x8b)
Failed Test             Stat Wstat Total Fail  Failed  List of Failed
-------------------------------------------------------------------------------
t/50dbm_simple.t          -1   139    ??   ??       %  ??
t/51dbm_file.t            -1   139    ??   ??       %  ??
t/85gofer.t               -1   139    ??   ??       %  ??
t/zvg_50dbm_simple.t      -1   139    ??   ??       %  ??
t/zvg_51dbm_file.t        -1   139    ??   ??       %  ??
t/zvg_85gofer.t           -1   139    ??   ??       %  ??
t/zvn_50dbm_simple.t      -1   139    ??   ??       %  ??
t/zvn_51dbm_file.t         1   256    ??   ??       %  ??
t/zvn_85gofer.t           -1   139    ??   ??       %  ??
t/zvp_19fhtrace.t          3   768    27    3  11.11%  17-19
t/zvp_50dbm_simple.t      -1   139    ??   ??       %  ??
t/zvp_51dbm_file.t         1   256    ??   ??       %  ??
t/zvp_85gofer.t           -1   139    ??   ??       %  ??
t/zvxgn_50dbm_simple.t    -1   139    ??   ??       %  ??
t/zvxgn_51dbm_file.t      -1   139    ??   ??       %  ??
t/zvxgn_85gofer.t         -1   139    ??   ??       %  ??
t/zvxgnp_50dbm_simple.t   -1   139    ??   ??       %  ??
t/zvxgnp_51dbm_file.t     -1   139    ??   ??       %  ??
t/zvxgnp_85gofer.t        -1   139    ??   ??       %  ??
t/zvxgp_19fhtrace.t        3   768    27    3  11.11%  17-19
t/zvxgp_50dbm_simple.t    -1   139    ??   ??       %  ??
t/zvxgp_51dbm_file.t      -1   139    ??   ??       %  ??
t/zvxgp_85gofer.t         -1   139    ??   ??       %  ??
t/zvxnp_50dbm_simple.t    -1   139    ??   ??       %  ??
t/zvxnp_51dbm_file.t      -1   139    ??   ??       %  ??
t/zvxnp_85gofer.t         -1   139    ??   ??       %  ??
38 tests and 305 subtests skipped.
Failed 26/182 test scripts, 85.71% okay. -196/5977 subtests failed, 103.28% okay
.
make: 1254-004 The error code from the last command is 255.


Stop.

It's great that a minus number of tests failed. I'm going to install it anyway. If it doesn't work, I'll abandon Perl altogether and write what I need in C.

Harry Jamieson

Reply via email to