There are currently quite a few reports about DBD::CSV not able to install, as 50_chopblanks is failing
I finally found a combination in which I can reproduce the failure, but it seems brittle and unstable. We needz help :) How does it look: FAIL: DBD-CSV-0.36 630 > make test Skip blib/lib/Bundle/DBD/CSV.pm (unchanged) Skip blib/lib/DBD/CSV.pm (unchanged) PERL_DL_NONLAZY=1 /pro/bin/perl5.14.1 "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/00_meta.t ......... skipped: Author tests not required for installation t/00_pod.t .......... ok t/00_pod_cov.t ...... ok t/10_base.t ......... 2/? # Showing relevant versions # Using DBI version 1.622 # Using DBD::File version 0.40 # Using SQL::Statement version 1.401 # Using Text::CSV_XS version 0.94 # DBD::CSV 0.36 using Text::CSV_XS (0.94) # DBD::File 0.40 using IO::File (1.15) # DBI::DBD::SqlEngine 0.03 using SQL::Statement 1.401 # DBI 1.622 # OS linux (2.6.37.6-0.5-desktop) # Perl 5.014001 (x86_64-linux-ld) t/10_base.t ......... ok t/11_dsnlist.t ...... ok t/20_createdrop.t ... ok t/30_insertfetch.t .. ok t/31_delete.t ....... ok t/32_update.t ....... ok t/40_numrows.t ...... ok t/41_nulls.t ........ ok t/42_bindparam.t .... ok t/43_blobs.t ........ ok t/44_listfields.t ... ok t/48_utf8.t ......... ok t/50_chopblanks.t ... 1/? # Failed test 'fetch' # at t/50_chopblanks.t line 41. # Failed test 'content' # at t/50_chopblanks.t line 42. # Structures begin differing at: # $got = undef # $expected = ARRAY(0x162ff08) # Failed test 'fetch' # at t/50_chopblanks.t line 41. # Failed test 'content' # at t/50_chopblanks.t line 42. # Structures begin differing at: # $got = undef # $expected = ARRAY(0x1628560) # Looks like you failed 4 tests of 65. t/50_chopblanks.t ... Dubious, test returned 4 (wstat 1024, 0x400) Failed 4/65 subtests t/51_commit.t ....... ok t/60_misc.t ......... ok t/70_csv.t .......... ok t/71_csv-ext.t ...... ok t/72_csv-schema.t ... ok t/73_csv-case.t ..... ok t/80_rt.t ........... ok t/85_error.t ........ ok Test Summary Report ------------------- t/50_chopblanks.t (Wstat: 1024 Tests: 65 Failed: 4) Failed tests: 29-30, 47-48 Non-zero exit status: 4 t/73_csv-case.t (Wstat: 0 Tests: 44 Failed: 0) TODO passed: 30, 32, 34, 36, 38, 40, 42 Files=24, Tests=723, 4 wallclock secs ( 0.12 usr 0.04 sys + 3.57 cusr 0.41 csys = 4.14 CPU) Result: FAIL Failed 1/24 test programs. 4/723 subtests failed. Then change like below and behold: PASS: DBD-CSV-0.36 633 > make test PERL_DL_NONLAZY=1 /pro/bin/perl5.14.1 "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/00_meta.t ......... skipped: Author tests not required for installation t/00_pod.t .......... ok t/00_pod_cov.t ...... ok t/10_base.t ......... 1/? # Showing relevant versions # Using DBI version 1.622 # Using DBD::File version 0.40 # Using SQL::Statement version 1.401 # Using Text::CSV_XS version 0.94 # DBD::CSV 0.36 using Text::CSV_XS (0.94) # DBD::File 0.40 using IO::File (1.15) # DBI::DBD::SqlEngine 0.03 using SQL::Statement 1.401 # DBI 1.622 # OS linux (2.6.37.6-0.5-desktop) # Perl 5.014001 (x86_64-linux-ld) t/10_base.t ......... ok t/11_dsnlist.t ...... ok t/20_createdrop.t ... ok t/30_insertfetch.t .. ok t/31_delete.t ....... ok t/32_update.t ....... ok t/40_numrows.t ...... ok t/41_nulls.t ........ ok t/42_bindparam.t .... ok t/43_blobs.t ........ ok t/44_listfields.t ... ok t/48_utf8.t ......... ok t/50_chopblanks.t ... ok t/51_commit.t ....... ok t/60_misc.t ......... ok t/70_csv.t .......... ok t/71_csv-ext.t ...... ok t/72_csv-schema.t ... ok t/73_csv-case.t ..... ok t/80_rt.t ........... ok t/85_error.t ........ ok All tests successful. Test Summary Report ------------------- t/73_csv-case.t (Wstat: 0 Tests: 44 Failed: 0) TODO passed: 30, 32, 34, 36, 38, 40, 42 Files=24, Tests=723, 4 wallclock secs ( 0.13 usr 0.04 sys + 3.57 cusr 0.40 csys = 4.14 CPU) Result: PASS --8<--- SqlEngine.pm.diff --- lib/perl5/site_perl/5.14.1/x86_64-linux-ld/DBI/DBD/SqlEngine.pm.org 2012-12-05 15:53:34.000000000 +0100 +++ lib/perl5/site_perl/5.14.1/x86_64-linux-ld/DBI/DBD/SqlEngine.pm 2012-12-05 15:53:40.000000000 +0100 @@ -795,6 +795,7 @@ sub execute local $SIG{__WARN__} = sub { push @err, @_ }; $result = $stmt->execute( $sth, $params ); }; + my $dummy = \[]; unless ( defined $result ) { $sth->set_err( $DBI::stderr, $@ || $stmt->{errstr} || $err[0] ); -->8--- These cause FAIL (as in it still FAILS, so no change): my $dummy = $result; my $dummy = 1; my $dummy = []; my $dummy = {}; These cause PASS: my $dummy = { bonkers => 1 }; my $dummy = [ 1, 2 ]; my $dummy = \[]; my $dummy = \{}; As Tim nicely put it: this smells like the canary in the coalmines I am currently trying to get all the prereqs installed on perl-5.17.6 compiled with clang -fsanitize=address, but I cannot install a lot of the prereq's including DBI. I will post a separate message about that -- H.Merijn Brand http://tux.nl Perl Monger http://amsterdam.pm.org/ using perl5.00307 .. 5.17 porting perl5 on HP-UX, AIX, and openSUSE http://mirrors.develooper.com/hpux/ http://www.test-smoke.org/ http://qa.perl.org http://www.goldmark.org/jeff/stupid-disclaimers/