testbot/lib: Automatically reconnect to the database.
Francois Gouget
fgouget at codeweavers.com
Fri Oct 26 11:18:28 CDT 2012
This way short idle timeouts don't break WineTestBot.
---
testbot/lib/ObjectModel/DBIBackEnd.pm | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/testbot/lib/ObjectModel/DBIBackEnd.pm b/testbot/lib/ObjectModel/DBIBackEnd.pm
index 5e61eed..72ff3c5 100644
--- a/testbot/lib/ObjectModel/DBIBackEnd.pm
+++ b/testbot/lib/ObjectModel/DBIBackEnd.pm
@@ -43,7 +43,13 @@ sub GetDb
{
my $self = shift;
- if (! defined($self->{Db}))
+ if (defined $self->{Db} && !$self->{Db}->ping())
+ {
+ # This connection no longer works, probably due to the database idle timeout
+ $self->{Db}->disconnect();
+ $self->{Db} = undef;
+ }
+ if (!defined $self->{Db})
{
$self->{Db} = DBI->connect(@{$self->{ConnectArgs}});
}
--
1.7.10.4
More information about the wine-patches
mailing list