summaryrefslogtreecommitdiffstats
path: root/Bugzilla/DB/Pg.pm
diff options
context:
space:
mode:
authorMax Kanat-Alexander <mkanat@bugzilla.org>2011-02-14 21:00:17 +0100
committerMax Kanat-Alexander <mkanat@bugzilla.org>2011-02-14 21:00:17 +0100
commita4ae80a43078cb33f759863c6f436619290137c3 (patch)
treebb2f7b5feb5abb562711a5e3e1bae88202607681 /Bugzilla/DB/Pg.pm
parenta995ad3f644961f57afc9d7bbdbd1b3849cdc74c (diff)
downloadbugzilla-a4ae80a43078cb33f759863c6f436619290137c3.tar.gz
bugzilla-a4ae80a43078cb33f759863c6f436619290137c3.tar.xz
Bug 603127: Make checksetup.pl require DBD::Pg 2.17.2 when using Pg 9.0 or
later. r=dkl, a=mkanat
Diffstat (limited to 'Bugzilla/DB/Pg.pm')
-rw-r--r--Bugzilla/DB/Pg.pm13
1 files changed, 13 insertions, 0 deletions
diff --git a/Bugzilla/DB/Pg.pm b/Bugzilla/DB/Pg.pm
index 7802d58ef..e59a638a4 100644
--- a/Bugzilla/DB/Pg.pm
+++ b/Bugzilla/DB/Pg.pm
@@ -211,6 +211,19 @@ sub bz_explain {
# Custom Database Setup
#####################################################################
+sub bz_check_server_version {
+ my $self = shift;
+ my ($db) = @_;
+ my $server_version = $self->SUPER::bz_check_server_version(@_);
+ my ($major_version) = $server_version =~ /^(\d+)/;
+ # Pg 9 requires DBD::Pg 2.17.2 in order to properly read bytea values.
+ if ($major_version >= 9) {
+ local $db->{dbd}->{version} = '2.17.2';
+ local $db->{name} = $db->{name} . ' 9+';
+ Bugzilla::DB::_bz_check_dbd(@_);
+ }
+}
+
sub bz_setup_database {
my $self = shift;
$self->SUPER::bz_setup_database(@_);