Alexandre Julliard : Revert "testbot: Better wrap the database backend code."
Module: tools Branch: master Commit: 376816550c3eaebd246a81fc98aa4ad032500833 URL: https://source.winehq.org/git/tools.git/?a=commit;h=376816550c3eaebd246a81fc... Author: Alexandre Julliard <julliard(a)winehq.org> Date: Wed Jan 31 20:54:55 2018 +0100 Revert "testbot: Better wrap the database backend code." This reverts commit 831aa5ce66000626f963c50ba37f1ddabb642d3c. It kills the testbot. Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- testbot/bin/Engine.pl | 4 ++-- testbot/lib/ObjectModel/BackEnd.pm | 33 ++------------------------- testbot/lib/ObjectModel/DBIBackEnd.pm | 10 ++++---- testbot/lib/WineTestBot/VMs.pm | 4 ++-- testbot/lib/WineTestBot/WineTestBotObjects.pm | 4 ++-- 5 files changed, 13 insertions(+), 42 deletions(-) diff --git a/testbot/bin/Engine.pl b/testbot/bin/Engine.pl index d637564..827879c 100755 --- a/testbot/bin/Engine.pl +++ b/testbot/bin/Engine.pl @@ -309,8 +309,8 @@ sub HandleJobStatusChange($$$) if ($OldStatus eq "running" && $NewStatus ne "running") { - # Make sure the child process does not inherit the database connections - CloseAllDBBackEnds(); + # Make sure the child process does not inherit the database connection + $ActiveBackEnds{'WineTestBot'}->Close(); my $Pid = fork; if (!defined $Pid) diff --git a/testbot/lib/ObjectModel/BackEnd.pm b/testbot/lib/ObjectModel/BackEnd.pm index 0bb48cf..6c5c813 100644 --- a/testbot/lib/ObjectModel/BackEnd.pm +++ b/testbot/lib/ObjectModel/BackEnd.pm @@ -30,11 +30,11 @@ should provide. =cut -use vars qw(@ISA @EXPORT); +use vars qw(@ISA @EXPORT %ActiveBackEnds); require Exporter; @ISA = qw(Exporter); -(a)EXPORT = qw(&AddDBBackEnd &GetDBBackEnd &RemoveDBBackEnd &CloseAllDBBackEnds); +(a)EXPORT = qw(%ActiveBackEnds); sub new($@) { @@ -51,33 +51,4 @@ sub _initialize($) #my ($self) = @_; } - -my %_ActiveBackEnds; - -sub AddDBBackEnd($$) -{ - my ($Name, $BackEnd) = @_; - $_ActiveBackEnds{$Name} = $BackEnd; -} - -sub GetDBBackEnd($) -{ - my ($Name) = @_; - return $_ActiveBackEnds{$Name}; -} - -sub RemoveDBBackEnd($) -{ - my ($Name) = @_; - delete $_ActiveBackEnds{$Name}; -} - -sub CloseAllDBBackEnds() -{ - foreach my $BackEnd (values %_ActiveBackEnds) - { - $BackEnd->Close(); - } -} - 1; diff --git a/testbot/lib/ObjectModel/DBIBackEnd.pm b/testbot/lib/ObjectModel/DBIBackEnd.pm index d4b0777..565d4a8 100644 --- a/testbot/lib/ObjectModel/DBIBackEnd.pm +++ b/testbot/lib/ObjectModel/DBIBackEnd.pm @@ -604,12 +604,12 @@ sub Close($) } } -sub UseDBIBackEnd($$$$$$) +sub UseDBIBackEnd($$@) { - my ($class, $DbSelector, $DbSource, $DbUser, $DbPassword, $DbArgs) = @_; + my $class = shift; + my $DbSelector = shift; - my $BackEnd = $class->new(); - $BackEnd->{ConnectArgs} = [$DbSource, $DbUser, $DbPassword, $DbArgs]; - AddDBBackEnd($DbSelector, $BackEnd); + $ObjectModel::BackEnd::ActiveBackEnds{$DbSelector} = $class->new(); + $ObjectModel::BackEnd::ActiveBackEnds{$DbSelector}->{ConnectArgs} = \@_; } 1; diff --git a/testbot/lib/WineTestBot/VMs.pm b/testbot/lib/WineTestBot/VMs.pm index bb9a832..2ba6b4b 100644 --- a/testbot/lib/WineTestBot/VMs.pm +++ b/testbot/lib/WineTestBot/VMs.pm @@ -344,8 +344,8 @@ sub Run($$$$$) # So set ChildPid in the parent and synchronize with the child so it only # starts once this is done. - # Make sure the child process will use its own database connections - CloseAllDBBackEnds(); + # Make sure the child process will use its own database connection + $self->GetBackEnd()->Close(); use Fcntl; my ($fd_read, $fd_write); diff --git a/testbot/lib/WineTestBot/WineTestBotObjects.pm b/testbot/lib/WineTestBot/WineTestBotObjects.pm index 20ff6b1..b46fa41 100644 --- a/testbot/lib/WineTestBot/WineTestBotObjects.pm +++ b/testbot/lib/WineTestBot/WineTestBotObjects.pm @@ -37,7 +37,7 @@ require Exporter; sub GetBackEnd($) { #my ($self) = @_; - return GetDBBackEnd('WineTestBot'); + return $ActiveBackEnds{'WineTestBot'}; } @@ -61,7 +61,7 @@ require Exporter; sub GetBackEnd($) { #my ($self) = @_; - return GetDBBackEnd('WineTestBot'); + return $ActiveBackEnds{'WineTestBot'}; } 1;
participants (1)
-
Alexandre Julliard