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