Bug#691727: libdbd-pg-perl: Build failed when PostgreSQL is installed

gregor herrmann gregoa at debian.org
Mon Oct 29 16:27:47 UTC 2012


On Mon, 29 Oct 2012 11:56:31 +0100, Ansgar Burchardt wrote:

> > ---8<---
> > make[1]: quittant le répertoire « /tmp/t/libdbd-pg-perl-2.19.2 »
> >    dh_auto_test
> > make[1]: entrant dans le répertoire « /tmp/t/libdbd-pg-perl-2.19.2 »
> > PGINITDB="/usr/lib/postgresql/9.1/bin/initdb" PERL_DL_NONLAZY=1
> > /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0,
> > 'blib/lib', 'blib/arch')" t/*.t
> > t/00_signature.t .... skipped: Set the environment variable
> > TEST_SIGNATURE to enable this test
> > t/00basic.t ......... ok
> > Please wait, creating new database for testing
> > 
> > #   Failed test 'Connect with invalid option fails'
> > #   at t/01connect.t line 79.
> > #                   ''
> > #     doesn't match '(?^:DBI connect.+failed:)'
> [...]
> > # Looks like you failed 1 test of 15.
> > t/01connect.t .......
> > Dubious, test returned 1 (wstat 256, 0x100)
> > --->8---
> 
> Hmm, does anything change when you build in the "C" locale instead of
> the French one (LC_ALL=C)?

There seem to be more factors:

- With (build depending on locales-all and) exporting LC_ALL=fr_FR.UTF-8 I get:

make[1]: entrant dans le répertoire « /tmp/buildd/libdbd-pg-perl-2.19.2 »
PGINITDB="/usr/lib/postgresql/9.1/bin/initdb" PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00_signature.t .... skipped: Set the environment variable TEST_SIGNATURE to enable this test
t/00basic.t ......... ok
Please wait, creating new database for testing
Use of uninitialized value $info in pattern match (m//) at t/dbdpg_test_setup.pl line 402.
Use of uninitialized value $info in pattern match (m//) at t/dbdpg_test_setup.pl line 402.
# 
# DBI                         Version 1.622
# DBD::Pg                     Version 2.19.2
# Perl                        Version 5.14.2
# OS                          linux
# PostgreSQL (compiled)       ?
# PostgreSQL (target)         ?
# PostgreSQL (reported)       ?
# Default port                ?
# DBI_DSN                     ?
# DBI_USER                    <not set>
# Test schema                 dbd_pg_testschema
# LANG                        C
# Adjusted:                   initdb
# Error was: FATAL:  role "postgres" does not exist at t/dbdpg_test_setup.pl line 494
t/01connect.t ....... skipped: Connection to database failed, cannot continue testing
t/01constants.t ..... ok
t/02attribs.t ....... skipped: Connection to database failed, cannot continue testing
t/03dbmethod.t ...... skipped: Connection to database failed, cannot continue testing
t/03smethod.t ....... skipped: Connection to database failed, cannot continue testing
t/04misc.t .......... skipped: Connection to database failed, cannot continue testing
t/06bytea.t ......... skipped: Connection to database failed, cannot continue testing
t/07copy.t .......... skipped: Connection to database failed, cannot continue testing
t/08async.t ......... skipped: Connection to database failed, cannot continue testing
t/09arrays.t ........ skipped: Connection to database failed, cannot continue testing
t/12placeholders.t .. skipped: Connection to database failed, cannot continue testing
t/20savepoints.t .... skipped: Connection to database failed, cannot continue testing
Removing test database directory
t/99cleanup.t ....... ok
All tests successful.
Files=15, Tests=140,  7 wallclock secs ( 0.08 usr  0.04 sys +  1.49 cusr  0.35 csys =  1.96 CPU)
Result: PASS
make[1]: quittant le répertoire « /tmp/buildd/libdbd-pg-perl-2.19.2 »

  But the tests still pass ...

- After that I still have a postgresql process running, and from then
  on the tests are the same as above, with or without LC_ALL.

- If I kill the process and revert the LC_ALL, the tests are actually
  run:

make[1]: Entering directory `/tmp/buildd/libdbd-pg-perl-2.19.2'
PGINITDB="/usr/lib/postgresql/9.1/bin/initdb" PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00_signature.t .... skipped: Set the environment variable TEST_SIGNATURE to enable this test
t/00basic.t ......... ok
Please wait, creating new database for testing
Use of uninitialized value $info in pattern match (m//) at t/dbdpg_test_setup.pl line 402.
Use of uninitialized value $info in pattern match (m//) at t/dbdpg_test_setup.pl line 402.
# 
# DBI                         Version 1.622
# DBD::Pg                     Version 2.19.2
# Perl                        Version 5.14.2
# OS                          linux
# PostgreSQL (compiled)       90106
# PostgreSQL (target)         90106
# PostgreSQL (reported)       PostgreSQL 9.1.6 on x86_64-unknown-linux-gnu, compiled by gcc (Debian 4.7.2-2) 4.7.2, 64-bit
# Default port                5432
# DBI_DSN                     dbi:Pg:db="postgres";port=5440;host=/tmp/dbdpg_testdatabase_16RMn5/data/socket
# DBI_USER                    pbuilder
# Test schema                 dbd_pg_testschema
# LANG                        C
# array_nulls                 on
# backslash_quote             safe_encoding
# client_encoding             UTF8
# server_encoding             UTF8
# standard_conforming_strings on
# Adjusted:                   initdb
t/01connect.t ....... ok
t/01constants.t ..... ok
t/02attribs.t ....... ok
t/03dbmethod.t ...... ok
t/03smethod.t ....... ok
t/04misc.t .......... ok
t/06bytea.t ......... ok
t/07copy.t .......... ok
t/08async.t ......... ok
t/09arrays.t ........ ok
t/12placeholders.t .. ok
t/20savepoints.t .... ok
Removing test database directory
t/99cleanup.t ....... ok
All tests successful.
Files=15, Tests=1677, 21 wallclock secs ( 0.33 usr  0.02 sys +  2.16 cusr  0.52 csys =  3.03 CPU)
Result: PASS
make[1]: Leaving directory `/tmp/buildd/libdbd-pg-perl-2.19.2'

  ... and there's no leftover pg process.

  
So it seems that the locale somehow influences the tests but I can't
reproduce Xavier's error.

(I don't have a machine with a "real" postgressql server and a build
environment right now ...)


Cheers,
gregor

-- 
 .''`.  Homepage: http://info.comodo.priv.at/ - OpenPGP key 0xBB3A68018649AA06
 : :' : Debian GNU/Linux user, admin, and developer  -  http://www.debian.org/
 `. `'  Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe
   `-   
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-perl-maintainers/attachments/20121029/822c2379/attachment.pgp>


More information about the pkg-perl-maintainers mailing list