[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [OSSTEST PATCH 06/21] starvation: Teach archaeologists about starved job state
sg-report-flight is a bit awkward. It thinks mostly about step status, not job status. So, when justifying, if we don't find a step, and the job state is starved, we treat the step as starved. If there are only starved steps, then we don't have evidence that this is a regression, because the test wasn't run in the baseline. If there are other steps we look at those instead. Signed-off-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx> --- Osstest/Executive.pm | 4 ++-- sg-report-flight | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Osstest/Executive.pm b/Osstest/Executive.pm index b27b8d25..a9f9ac78 100644 --- a/Osstest/Executive.pm +++ b/Osstest/Executive.pm @@ -362,8 +362,8 @@ END Content => (join " | ", @content), ColourAttr => "bgcolor=\"$failcolour\"", }; - } elsif ($status eq 'blocked') { - return $single->("blocked", $purple), + } elsif ($status eq 'blocked' or $status eq 'starved') { + return $single->($status, $purple), } elsif ($status eq 'queued') { return $single->("($status)", $grey_dark), } elsif ($status eq 'preparing') { diff --git a/sg-report-flight b/sg-report-flight index 2677c479..6c481f6f 100755 --- a/sg-report-flight +++ b/sg-report-flight @@ -160,6 +160,10 @@ sub findaflight ($$$$$) { return undef; } + my $jcheckq= db_prepare(<<END); + SELECT status FROM jobs WHERE flight=? AND job=? +END + my $checkq= db_prepare(<<END); SELECT status FROM steps WHERE flight=? AND job=? AND testid=? AND status!='skip' @@ -317,6 +321,11 @@ END if (!defined $whynot && defined $job) { $checkq->execute($tflight, $job, $testid); ($chkst) = $checkq->fetchrow_array(); + if (!defined $chkst) { + $jcheckq->execute($tflight, $job); + my ($jchkst) = $jcheckq->fetchrow_array(); + $chkst = $jchkst if $jchkst eq 'starved'; + } } $whynot= $sub->($tflight, $chkst) if !defined $whynot; if (!defined $whynot) { @@ -861,6 +870,8 @@ END my $tblocker = $st eq 'fail' ? 'regression' : $st; my $tpriority = $j->{job} =~ m/^build/ ? 600 : 100; $rtup= [ $tpriority, $tblocker, "REGR. vs.", $chkflight ]; + } elsif ($chkst eq 'starved') { # actually, the job was 'starved' + $rtup= [ 50, '', "starved in", $chkflight ]; } else { $rtup= [ 170, '', "$chkst in", $chkflight ]; } -- 2.11.0 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |