xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Ian Jackson <ian.jackson@eu.citrix.com>
To: xen-devel@lists.xenproject.org
Cc: Andrew Cooper <andrew.cooper3@citrix.com>,
	Wei Liu <wei.liu2@citrix.com>,
	Ian Jackson <Ian.Jackson@eu.citrix.com>
Subject: [OSSTEST PATCH 11/17] substep logfiles: Populate new logfile column, at all, for substeps
Date: Fri, 30 Jun 2017 17:25:14 +0100	[thread overview]
Message-ID: <1498839920-17025-12-git-send-email-ian.jackson@eu.citrix.com> (raw)
In-Reply-To: <1498839920-17025-1-git-send-email-ian.jackson@eu.citrix.com>

For now we populate it with the sometimes-wrong value based on
$script.  In detail:

* Add a parameter $logfile to $mjobdb->step_start, which currently
  always gets passed undef.

* In JobDB::Executive::step_start, try to use it as the value for the
  new logfile column.  But, if it is not set (which is currently
  always the case), default it to "<stepno>.<script>.log".

  This is the same log filename currently assumed (and therefore used)
  by sg-report-flight.  So with current versions of sg-report-flight,
  this has no visible functional change.

This is part of a "Populate-then-rely" schema change, as described in
schema/README.updates.  Specifically, this is part of the step:

5. Commit: code to populate new column; changing `add' to status
   Needed and `constraint' to status Ready.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
---
 Osstest/JobDB/Executive.pm   | 14 +++++++++-----
 Osstest/JobDB/Standalone.pm  |  4 ++--
 Osstest/TestSupport.pm       |  2 +-
 schema/steps-logfile-add.sql |  2 +-
 4 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/Osstest/JobDB/Executive.pm b/Osstest/JobDB/Executive.pm
index fbbb5ac..e1e2052 100644
--- a/Osstest/JobDB/Executive.pm
+++ b/Osstest/JobDB/Executive.pm
@@ -242,15 +242,17 @@ END
     logm("starting $flight started=$now") if $count>0;
 }
 
-sub step_start ($$) { #method
-    my ($jd,$testid,$script) = @_;
+sub step_start ($$;$$) { #method
+    my ($jd,$testid,$logfile,$script) = @_;
     my $snq = $dbh_tests->prepare(<<END);
         SELECT max(stepno) AS maxstep FROM steps
             WHERE flight=? AND job=?
 END
     my $createq = $dbh_tests->prepare(<<END);
-        INSERT INTO steps (flight,job,stepno, step,status, testid,started)
-            VALUES (?,?,?, ?,'running', ?,?)
+        INSERT INTO steps (flight,job,stepno,step,
+                           logfile,
+                           status,testid,started)
+            VALUES (?,?,?,?, ?, 'running',?,?)
 END
     if (!defined $script) {
 	$script = $0;
@@ -262,7 +264,9 @@ END
 	($stepno) = $snq->fetchrow_array();
 	$stepno //= 0;
 	$stepno++;
-	$createq->execute($flight,$job,$stepno, $script, $testid,time);
+	$createq->execute($flight,$job,$stepno,$script,
+			  $logfile // "$stepno.$script.log",
+			  $testid,time);
     });
     logm("---------- substep $stepno $testid running ----------");
 }
diff --git a/Osstest/JobDB/Standalone.pm b/Osstest/JobDB/Standalone.pm
index af93196..d9a90fc 100644
--- a/Osstest/JobDB/Standalone.pm
+++ b/Osstest/JobDB/Standalone.pm
@@ -88,8 +88,8 @@ sub current_flight ($) {
 
 sub job_ensure_started ($) { }
 
-sub step_start ($$;$) {
-    my ($jd,$testid,$script) = @_;
+sub step_start ($$;$$) {
+    my ($jd,$testid,$logfile,$script) = @_;
     logm("========== $flight.$job step $testid running ==========");
 }
 
diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index 5a951e5..a05dd97 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -248,7 +248,7 @@ sub complete_testid ($) {
 sub substep_start ($;$) {
     my ($testid,$script) = @_;
     complete_testid(\$testid);
-    $mjobdb->step_start($testid,$script);
+    $mjobdb->step_start($testid,undef,$script);
 }
 
 sub substep_finish ($$) {
diff --git a/schema/steps-logfile-add.sql b/schema/steps-logfile-add.sql
index 5e37b10..abc89b9 100644
--- a/schema/steps-logfile-add.sql
+++ b/schema/steps-logfile-add.sql
@@ -1,4 +1,4 @@
--- ##OSSTEST## 003 Preparatory
+-- ##OSSTEST## 003 Needed
 --
 -- Previously, the logfile name was inferred from "stepno" and
 -- "testid".  We want to be able to set it explicitly for substeps.
-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

  parent reply	other threads:[~2017-06-30 16:25 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-30 16:25 [OSSTEST PATCH 00/17] Fix substep (eg XTF) logfile links Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 01/17] Developer docs: A rune for flight comparision Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 02/17] schema updates: Fix typo in developer doc Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 03/17] schema updates: Document how to remove a used column Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 04/17] schema updates: mg-schema-test-database: Cope with applied updates Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 05/17] schema updates: Be willing to apply Ready changes Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 06/17] db updates: Make all INSERTs (except into steps) name columns explicitly Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 07/17] step logfiles: Break out $logfilename in two places Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 08/17] step logfiles: Standalone mode: Do not print uninformative $script value Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 09/17] substep logfiles: Move defaulting of $script into Executive Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 10/17] step logfiles: Provide new column Ian Jackson
2017-06-30 16:25 ` Ian Jackson [this message]
2017-06-30 16:25 ` [OSSTEST PATCH 12/17] substep logfiles: Set logfile and step columns correctly for substeps Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 13/17] step logfiles: Honour new logfile column Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 14/17] step logfiles: Make substep_* take $logfile, not $script Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 15/17] step logfiles: sg-run-job: Break out step-log-leafname Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 16/17] step logfiles: Populate logfile column with logfile name Ian Jackson
2017-06-30 16:25 ` [OSSTEST PATCH 17/17] step logfiles: Rely on new logfile column Ian Jackson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1498839920-17025-12-git-send-email-ian.jackson@eu.citrix.com \
    --to=ian.jackson@eu.citrix.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).