Francois Gouget : testbot: Lower the priority of long running mailing list jobs.

Alexandre Julliard julliard at winehq.org
Wed Jan 29 15:45:42 CST 2020


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

Author: Francois Gouget <fgouget at codeweavers.com>
Date:   Wed Jan 29 12:54:23 2020 +0100

testbot: Lower the priority of long running mailing list jobs.

This helps get as many patches tested as possible when a patch
(series) requires full rebuilds and keeps the TestBot busy for a long
time.

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

---

 testbot/lib/WineTestBot/Patches.pm | 11 ++++++++---
 testbot/web/Submit.pl              |  2 +-
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/testbot/lib/WineTestBot/Patches.pm b/testbot/lib/WineTestBot/Patches.pm
index d021f9c..ca8d57f 100644
--- a/testbot/lib/WineTestBot/Patches.pm
+++ b/testbot/lib/WineTestBot/Patches.pm
@@ -152,7 +152,8 @@ sub Submit($$$)
   # Create a new job for this patch
   my $Jobs = CreateJobs();
   my $NewJob = $Jobs->Add();
-  $NewJob->Priority(6);
+  my $Priority = 5;
+  $NewJob->Priority($Priority);
   my $PropertyDescriptor = $Jobs->GetPropertyDescriptorByName("Remarks");
   my $Subject = $self->Subject;
   $Subject =~ s/\[PATCH[^\]]*]//i;
@@ -282,8 +283,11 @@ sub Submit($$$)
 
       my $Task = $Tasks->Add();
       $Task->VM($VM);
-      $Task->Timeout(GetBuildTimeout($Impacts, $TaskMissions) +
-                     GetTestTimeout($Impacts, $TaskMissions));
+      my $Timeout = GetBuildTimeout($Impacts, $TaskMissions) +
+                    GetTestTimeout($Impacts, $TaskMissions);
+      # Let short-running jobs run first
+      $Priority = 6 if ($Timeout >= $WineBuildTimeout);
+      $Task->Timeout($Timeout);
       $Task->Missions($TaskMissions->{Statement});
     }
   }
@@ -320,6 +324,7 @@ sub Submit($$$)
 
   # Switch Status to staging to indicate we are done setting up the job
   $NewJob->Status("staging");
+  $NewJob->Priority($Priority);
   ($ErrKey, $ErrProperty, $ErrMessage) = $Jobs->Save();
   if (defined $ErrMessage)
   {
diff --git a/testbot/web/Submit.pl b/testbot/web/Submit.pl
index 1943b42..f76ca6e 100644
--- a/testbot/web/Submit.pl
+++ b/testbot/web/Submit.pl
@@ -1088,7 +1088,7 @@ sub _SubmitJob($$)
   my $Jobs = CreateJobs();
   my $NewJob = $Jobs->Add();
   $NewJob->User($self->GetCurrentSession()->User);
-  $NewJob->Priority(5);
+  $NewJob->Priority(4);
   $NewJob->Remarks($self->{Remarks} || $self->{CmdLineArg} || "");
   my $Branch = CreateBranches()->GetItem($self->{Branch});
   $NewJob->Branch($Branch) if (defined $Branch);




More information about the wine-cvs mailing list