Alexandre Julliard : Revert "testbot: Better wrap the database backend code."

Alexandre Julliard julliard at winehq.org
Wed Jan 31 13:55:11 CST 2018


Module: tools
Branch: master
Commit: 376816550c3eaebd246a81fc98aa4ad032500833
URL:    https://source.winehq.org/git/tools.git/?a=commit;h=376816550c3eaebd246a81fc98aa4ad032500833

Author: Alexandre Julliard <julliard at 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 at 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);
- at EXPORT = qw(&AddDBBackEnd &GetDBBackEnd &RemoveDBBackEnd &CloseAllDBBackEnds);
+ at 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;




More information about the wine-cvs mailing list