Package: libdbd-pg-perl Version: 2.19.2-2 Severity: important Tags: patch Dear Maintainer,
while doing tests in mixed wheezy/jessie environments (or, with the same effect, using a private wheezy backport of PostgreSQL 9.4), I noticed breakage in the "table_info" and "tables" methods in DBD::Pg. Using these methods from a wheezy client (libdbd-pg-perl 2.19.2-2) against a jessie server (postgresql-9.4 9.4.1-1) result in a | DBD::Pg::db table_info failed: ERROR: column t.spclocation does not exist error message, and application abort. This was fixed in upstream commit | commit 00f3d68a79beb31a06460dd8f7cb73168c33ca5c | Author: Greg Sabino Mullane <g...@endpoint.com> | Date: Thu May 31 14:10:19 2012 -0400 | | Adjustments for the loss of spclocation in 9.2 | | Pg.pm | 7 +++++++ | 1 file changed, 7 insertions(+) and resolves the issue for me. Therefore I'd like to suggest to add this to the wheezy version of libdbd-pg-perl, and in due course, i.e. in the next point release the latest. Such mixed installations are more likely to occur after the jessie release, and no one wants to see such breakage. The test below, stripped down from a production code, uses these calls for a high-level check for existence of a certain table. It passes on wheezy and jessie, but fails in the mixed scenario as described above. Run as the "postgres" user, or grant proper access privileges. ================================================================= #!/usr/bin/perl =cut Run beforehand: su postgres -c psql <<__EOS__ CREATE DATABASE testdb; \c testdb CREATE SCHEMA testschema; CREATE TABLE testschema.test (id integer NOT NULL); __EOS__ =cut use 5.010; use strict; use warnings; use DBI; use Data::Dumper; use Test::More; my $dbh = DBI->connect ('dbi:Pg:dbname=testdb', '', '') or die; my $sth = $dbh->table_info ('%', 'testschema', 'test') or die; my $info = $sth->fetchall_arrayref; diag (Dumper ($info)); ok (scalar @$info, 'non-empty table_info result'); my @got = grep { $_ eq 'testschema.test' } $dbh->tables ('%', 'testschema', 'test'); diag (Dumper (\@got)); is (scalar @got, 1, 'got via tables'); done_testing; ================================================================= Regards, Christoph -- System Information: Debian Release: 7.8 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 3.14.37 (SMP w/4 CPU cores) Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) Shell: /bin/sh linked to /bin/dash Versions of packages libdbd-pg-perl depends on: ii libc6 2.13-38+deb7u8 ii libdbi-perl [perl-dbdabi-94] 1.622-1+deb7u1 ii libpq5 9.1.15-0+deb7u1 ii perl 5.14.2-21+deb7u2 ii perl-base [perlapi-5.14.2] 5.14.2-21+deb7u2 libdbd-pg-perl recommends no packages. libdbd-pg-perl suggests no packages. -- no debconf information
signature.asc
Description: Digital signature