From 6840ce638e00738b29d84f428afe4d1b4c5b8e5c Mon Sep 17 00:00:00 2001 From: "Brian Fraser fraserb@gmail.com" <> Date: Wed, 31 Oct 2012 13:48:20 -0300 Subject: [PATCH] Sandbox.pm: Make get_dbh_for die if it can't get a dbh, which should help to diagnose some test box failures --- lib/Sandbox.pm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/Sandbox.pm b/lib/Sandbox.pm index 413db6b9..adcd9bd6 100644 --- a/lib/Sandbox.pm +++ b/lib/Sandbox.pm @@ -118,8 +118,7 @@ sub get_dbh_for { my $dbh; eval { $dbh = $dp->get_dbh($dp->get_cxn_params($dsn), $cxn_ops) }; if ( $EVAL_ERROR ) { - PTDEBUG && _d('Failed to get dbh for', $server, ':', $EVAL_ERROR); - return 0; + die 'Failed to get dbh for' . $server . ': ' . $EVAL_ERROR; } $dbh->{InactiveDestroy} = 1; # Prevent destroying on fork. $dbh->{FetchHashKeyName} = 'NAME_lc' unless $cxn_ops && $cxn_ops->{no_lc}; @@ -265,7 +264,7 @@ sub leftover_servers { PTDEBUG && _d('Checking for leftover servers'); foreach my $serverno ( 1..6 ) { my $server = "master$serverno"; - my $dbh = $self->get_dbh_for($server); + my $dbh = eval { $self->get_dbh_for($server) }; if ( $dbh ) { $dbh->disconnect(); return "Sandbox $server " . $port_for{$server} . " was left up.";