[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [OSSTEST PATCH 1/2] other_revision_job_suffix: Take and pass referring runvar name
We are going to need this to sort out bisection for freebsd's recursive builds. Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> --- Osstest.pm | 6 +++--- cs-bisection-step | 17 +++++++++-------- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/Osstest.pm b/Osstest.pm index 7ce53fcb..561d584c 100644 --- a/Osstest.pm +++ b/Osstest.pm @@ -374,8 +374,8 @@ sub flight_otherjob ($$) { confess "$otherflightjob ?"; } -sub other_revision_job_suffix ($$) { - my ($jobfield, $separator) = @_; +sub other_revision_job_suffix ($$$) { + my ($jobfield, $refrunvar, $separator) = @_; return <<END (CASE WHEN ($jobfield) LIKE 'build-%-prev' THEN '${separator}prev' @@ -386,7 +386,7 @@ END sub main_revision_job_cond ($) { my ($jobfield) = @_; - return "(${\ other_revision_job_suffix($jobfield,'x') } = '')"; + return "(${\ other_revision_job_suffix($jobfield,'x','x') } = '')"; } sub get_harness_rev () { diff --git a/cs-bisection-step b/cs-bisection-step index 05bfaa0a..48208e46 100755 --- a/cs-bisection-step +++ b/cs-bisection-step @@ -232,7 +232,7 @@ END SELECT url.val AS uval, rev.val AS rval, url.job AS job, - ${\ other_revision_job_suffix('url.job',' ') } AS othrev, + ${\ other_revision_job_suffix('url.job','url.use',' ') } AS othrev, url.name AS longname FROM tmp_build_info AS rev @@ -1135,9 +1135,9 @@ our %jobs_created; our %builds_investigated; # $builds_investigated{$popjob} = 0, or {..row..} our %recursion_track; -sub preparejob ($$$); -sub preparejob ($$$) { - my ($popjob, $copyflight, $cacheok) = @_; +sub preparejob ($$$$); +sub preparejob ($$$$) { + my ($popjob, $copyflight, $refrunvar, $cacheok) = @_; # runs in db_retry qw(flights) if (exists $jobs_created{$popjob}) { @@ -1168,13 +1168,13 @@ END SELECT name FROM runvars WHERE flight=? AND job=? AND name = ? - AND ${\ other_revision_job_suffix('job',' ') } = ? + AND ${\ other_revision_job_suffix('job','?',' ') } = ? END foreach (my $i=0; $i<@treeinfos; $i++) { my $name= $treeinfos[$i]{Name}; my $othrev = $name =~ s{ (.+)$}{} ? $1 : ''; my $treevar= 'tree_'.$name; - $treeq->execute($copyflight, $popjob, $treevar, $othrev); + $treeq->execute($copyflight, $popjob, $treevar, $refrunvar, $othrev); my ($treerow) = $treeq->fetchrow_array(); $treeq->finish(); next unless defined $treerow; @@ -1312,7 +1312,8 @@ END print STDERR "Reusing $target for $subjob->{name}". " in $popflight.$popjob\n"; } else { - $target= preparejob($subjob->{job}, $subjob->{orgflight}, 1); + $target= preparejob($subjob->{job}, $subjob->{orgflight}, + $subjob->{name}, 1); } $jobsetq->execute($target, $popflight, $popjob, $subjob->{name}); } @@ -1339,7 +1340,7 @@ END db_retry($popflight,'constructing', $dbh_tests,[qw(flights)], sub { print STDERR "Populating $popflight...\n"; undef %jobs_created; - preparejob($job, $latest_flight, 0); + preparejob($job, $latest_flight, '', 0); foreach my $hostspec (split /,/, $hosts) { # / $hostspec =~ m/=/; $addvar->execute($popflight, $job, $`, $'); # ' -- 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 |