Francois Gouget : testbot: Let the scheduler log scheduling errors.

Alexandre Julliard julliard at winehq.org
Thu May 10 18:14:05 CDT 2018


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

Author: Francois Gouget <fgouget at codeweavers.com>
Date:   Fri May 11 00:15:06 2018 +0200

testbot: Let the scheduler log scheduling errors.

Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 testbot/bin/Engine.pl                       | 24 ++++------------------
 testbot/lib/WineTestBot/Engine/Scheduler.pm | 32 +++++++++--------------------
 2 files changed, 14 insertions(+), 42 deletions(-)

diff --git a/testbot/bin/Engine.pl b/testbot/bin/Engine.pl
index fae4067..c3db46b 100755
--- a/testbot/bin/Engine.pl
+++ b/testbot/bin/Engine.pl
@@ -351,11 +351,7 @@ sub HandleJobCancel($)
     return "0$ErrMessage";
   }
 
-  $ErrMessage = ScheduleJobs();
-  if (defined($ErrMessage))
-  {
-    LogMsg "Scheduling problem in HandleJobCancel: $ErrMessage\n";
-  }
+  ScheduleJobs();
 
   return "1OK";
 }
@@ -381,22 +377,14 @@ sub HandleJobRestart($)
     return "0$ErrMessage";
   }
 
-  $ErrMessage = ScheduleJobs();
-  if (defined($ErrMessage))
-  {
-    LogMsg "Scheduling problem in HandleJobRestart: $ErrMessage\n";
-  }
+  ScheduleJobs();
 
   return "1OK";
 }
 
 sub HandleRescheduleJobs()
 {
-  my $ErrMessage = ScheduleJobs();
-  if (defined($ErrMessage))
-  {
-    LogMsg "Scheduling problem in HandleRescheduleJobs: $ErrMessage\n";
-  }
+  ScheduleJobs();
 
   return "1OK";
 }
@@ -411,11 +399,7 @@ sub HandleVMStatusChange($$$)
     return "0Invalid status";
   }
 
-  my $ErrMessage = ScheduleJobs();
-  if (defined($ErrMessage))
-  {
-    LogMsg "Scheduling problem in HandleVMStatusChange: $ErrMessage\n";
-  }
+  ScheduleJobs();
 
   return "1OK";
 }
diff --git a/testbot/lib/WineTestBot/Engine/Scheduler.pm b/testbot/lib/WineTestBot/Engine/Scheduler.pm
index 52a6ced..52e7619 100644
--- a/testbot/lib/WineTestBot/Engine/Scheduler.pm
+++ b/testbot/lib/WineTestBot/Engine/Scheduler.pm
@@ -354,7 +354,7 @@ sub _CheckAndClassifyVMs()
         if (_CanScheduleOnVM($Sched, $VM))
         {
           my $ErrMessage = $VM->RunMonitor();
-          return ($ErrMessage, undef) if (defined $ErrMessage);
+          LogMsg "$ErrMessage\n" if (defined $ErrMessage);
         }
         # Ignore the VM for this round since we cannot use it
         $Sched->{busyvms}->{$VMKey} = 1;
@@ -389,7 +389,7 @@ sub _CheckAndClassifyVMs()
   # continuing with the scheduling.
   CheckJobs() if ($FoundVMErrors);
 
-  return (undef, $Sched);
+  return $Sched;
 }
 
 =pod
@@ -627,7 +627,7 @@ sub _ScheduleTasks($)
             $Sched->{busyvms}->{$VMKey} = 1;
             $VM->RecordStatus($Sched->{records}, join(" ", "running", $Job->Id, $Step->No, $Task->No));
             my $ErrMessage = $Task->Run($Step);
-            return ($ErrMessage, undef) if (defined $ErrMessage);
+            LogMsg "$ErrMessage\n" if (defined $ErrMessage);
 
             $Job->UpdateStatus();
             $Host->{idle}--;
@@ -660,7 +660,7 @@ sub _ScheduleTasks($)
     _AddNeededVM($NeededVMs, $VM, $Niceness);
   }
 
-  return (undef, $NeededVMs);
+  return $NeededVMs;
 }
 
 =pod
@@ -865,12 +865,11 @@ sub _RevertVMs($$)
       delete $Sched->{lambvms}->{$VMKey};
       $Sched->{busyvms}->{$VMKey} = 1;
       my $ErrMessage = $VM->RunRevert();
-      return $ErrMessage if (defined $ErrMessage);
+      LogMsg "$ErrMessage\n" if (defined $ErrMessage);
       $Host->{active}++ if ($VMStatus eq "off");
       $Host->{reverting}++;
     }
   }
-  return undef;
 }
 
 sub _PowerOffDirtyVMs($)
@@ -886,9 +885,8 @@ sub _PowerOffDirtyVMs($)
 
     $VM->RecordStatus($Sched->{records}, "dirty poweroff");
     my $ErrMessage = $VM->RunPowerOff();
-    return $ErrMessage if (defined $ErrMessage);
+    LogMsg "$ErrMessage\n" if (defined $ErrMessage);
   }
-  return undef;
 }
 
 my $_LastTaskCounts = "";
@@ -949,18 +947,10 @@ kept on standby so they are ready when their turn comes.
 
 sub ScheduleJobs()
 {
-  my ($ErrMessage, $Sched) = _CheckAndClassifyVMs();
-  return $ErrMessage if ($ErrMessage);
-
-  my $NeededVMs;
-  ($ErrMessage, $NeededVMs) = _ScheduleTasks($Sched);
-  return $ErrMessage if ($ErrMessage);
-
-  $ErrMessage = _RevertVMs($Sched, $NeededVMs);
-  return $ErrMessage if ($ErrMessage);
-
-  $ErrMessage = _PowerOffDirtyVMs($Sched);
-  return $ErrMessage if ($ErrMessage);
+  my $Sched = _CheckAndClassifyVMs();
+  my $NeededVMs = _ScheduleTasks($Sched);
+  _RevertVMs($Sched, $NeededVMs);
+  _PowerOffDirtyVMs($Sched);
 
   # Note that any VM Status or Role change will trigger ScheduleJobs() so this
   # records all not yet recorded VM state changes, even those not initiated by
@@ -981,8 +971,6 @@ sub ScheduleJobs()
   {
     $Sched->{recordgroups}->DeleteItem($Sched->{recordgroup});
   }
-
-  return undef;
 }
 
 




More information about the wine-cvs mailing list