summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorjasplin <qt-info@nokia.com>2010-02-03 10:53:27 +0100
committerjasplin <qt-info@nokia.com>2010-02-03 10:53:27 +0100
commit380ec39f9865f1ab2abe4ae0539b3b84cb84304c (patch)
tree3cc397909caa3f96a5ca51736a15f648d83a41f3 /doc
parent9375dc74f7e1df769e8bb61ca814462af335816e (diff)
Restructured the database schema.
The most important change of this patch is a restructring of the database schema in order to better support current and future use cases. In particular, the 'result' table has been reduced in size (which is important since this table is the one that will grow on a regular basis), and a 'bmcontext' table has been introduced as an extra structural level that is expected to make certain queries faster than they would have otherwise been (due to reduced need for complex join expressions etc.).
Diffstat (limited to 'doc')
-rw-r--r--doc/bmclient.html153
-rw-r--r--doc/bmproto.html103
-rw-r--r--doc/er-diagram.diabin4069 -> 4072 bytes
3 files changed, 52 insertions, 204 deletions
diff --git a/doc/bmclient.html b/doc/bmclient.html
index f6f2406..ca7d751 100644
--- a/doc/bmclient.html
+++ b/doc/bmclient.html
@@ -131,103 +131,7 @@ repository).
<tr>
<td>
<pre class="command">
-./bmclient <b>get snapshots</b> \
- &lt;test case&gt; &lt;test function&gt; \
- &lt;data tag&gt; &lt;metric&gt; \
- &lt;platform&gt; &lt;host&gt; \
- &lt;git repo&gt; &lt;git branch&gt;
-</pre>
-</td>
-<td class="commandDescr">
-Lists snapshots available for a particular context.
-</td>
-<td>
-<pre>
-&lt;timestamp 1&gt;
-&lt;sha1 1&gt;
-&lt;timestamp 2&gt;
-&lt;sha1 2&gt;
-...
-</pre>
-</td>
-<td>
-<pre>
-Content-type: text/json
-
-{
- "items": [
- ["&lt;timestamp 1&gt;",
- "&lt;sha1 1&gt;"],
- ["&lt;timestamp 2&gt;",
- "&lt;sha1 2&gt;"],
- ...
- ]
-}
-</pre>
-</td>
-</tr>
-
-<!-- ---------------------------------------------------------------------------------- -->
-<tr>
-<td>
-<pre class="command">
-./bmclient <b>get benchmarks</b> \
- [-metric &lt;metric&gt;] \
- [-platform &lt;platform&gt;] \
- [-host &lt;host&gt;] \
- [-branch &lt;git repo&gt; &lt;git branch&gt;]
-</pre>
-</td>
-<td class="commandDescr">
-Lists available benchmarks.
-<br /><br />
-<b>Note:</b> Test functions without any explicitly registered data tags
-(i.e. without any <code>_data()</code> function in the program running the
-benchmarks) have a single, empty data tag. These appear as single newlines in
-the output.
-<br /><br />
-Additional entity values (metric, platform, host, or git repo/branch) may be
-specified to restrict the output to benchmarks for which at least one result
-exists in combination with those values.
-</td>
-
-<td>
-<pre>
-&lt;test case 1&gt;
-&lt;test function 1&gt;
-&lt;data tag 1&gt;
-&lt;test case 2&gt;
-&lt;test function 2&gt;
-&lt;data tag 2&gt;
-...
-</pre>
-</td>
-<td>
-<pre>
-Content-type: text/json
-
-{
- "items": [
- ["&lt;test case 1&gt;",
- "&lt;test function 1&gt;",
- "&lt;data tag 1&gt;"],
- ["&lt;test case 2&gt;",
- "&lt;test function 2&gt;",
- "&lt;data tag 2&gt;"],
- ...
- ]
-}
-</pre>
-</td>
-</tr>
-
-<!-- ---------------------------------------------------------------------------------- -->
-<tr>
-<td>
-<pre class="command">
./bmclient <b>get metrics</b> \
- [-benchmark &lt;test case&gt; \
- &lt;test function&gt; &lt;data tag&gt;] \
[-platform &lt;platform&gt;] \
[-host &lt;host&gt;] \
[-branch &lt;git repo&gt; &lt;git branch&gt;]
@@ -235,8 +139,10 @@ Content-type: text/json
</td>
<td class="commandDescr">
Lists available metrics.
-Behaves similarly to the <span class="command"><b>get benchmarks</b></span> command
-(see this).
+<br /><br />
+Other context components (platform, host, or git repo/branch) may be
+specified to restrict the output to metrics for which at least one result
+exists in combination with those values.
</td>
<td>
<pre>
@@ -265,8 +171,6 @@ Content-type: text/json
<td>
<pre class="command">
./bmclient <b>get platforms</b> \
- [-benchmark &lt;test case&gt; \
- &lt;test function&gt; &lt;data tag&gt;] \
[-metric &lt;metric&gt;] \
[-host &lt;host&gt;] \
[-branch &lt;git repo&gt; &lt;git branch&gt;]
@@ -274,8 +178,10 @@ Content-type: text/json
</td>
<td class="commandDescr">
Lists available platforms.
-Behaves similarly to the <span class="command"><b>get benchmarks</b></span> command
-(see this).
+<br /><br />
+Other context components (metric, host, or git repo/branch) may be
+specified to restrict the output to platforms for which at least one result
+exists in combination with those values.
</td>
<td>
<pre>
@@ -304,8 +210,6 @@ Content-type: text/json
<td>
<pre class="command">
./bmclient <b>get hosts</b> \
- [-benchmark &lt;test case&gt; \
- &lt;test function&gt; &lt;data tag&gt;] \
[-metric &lt;metric&gt;] \
[-platform &lt;platform&gt;] \
[-branch &lt;git repo&gt; &lt;git branch&gt;]
@@ -313,8 +217,10 @@ Content-type: text/json
</td>
<td class="commandDescr">
Lists available hosts.
-Behaves similarly to the <span class="command"><b>get benchmarks</b></span> command
-(see this).
+<br /><br />
+Other context components (metric, platform, or git repo/branch) may be
+specified to restrict the output to hosts for which at least one result
+exists in combination with those values.
</td>
<td>
<pre>
@@ -343,8 +249,6 @@ Content-type: text/json
<td>
<pre class="command">
./bmclient <b>get branches</b> \
- [-benchmark &lt;test case&gt; \
- &lt;test function&gt; &lt;data tag&gt;] \
[-metric &lt;metric&gt;] \
[-platform &lt;platform&gt;] \
[-host &lt;host&gt;]
@@ -352,8 +256,10 @@ Content-type: text/json
</td>
<td class="commandDescr">
Lists available branches.
-Behaves similarly to the <span class="command"><b>get benchmarks</b></span> command
-(see this).
+<br /><br />
+Other context components (metric, platform, or host) may be
+specified to restrict the output to branches for which at least one result
+exists in combination with those values.
</td>
<td>
<pre>
@@ -409,12 +315,12 @@ the <i>input</i> time series. The command also lists the most recent fraction
<br /><br />
The range of the input time series is defined by the <span
-class="command">-timerange</span> option. Each of the two arguments to this
-option may be either 1) <b><code>first</code></b> or <b><code>last</code></b> to
-specify the first and last available snapshot respectively, or 2) a Unix
-timestamp value (an integer) that refers to the earliest snapshot that is not
-earlier than, or the latest snapshot that is not later than the specified
-value respectively.
+class="command">-timerange</span> option. The first argument to this
+option may be <b><code>first</code></b> and the second argument may
+be <b><code>last</code></b> to specify the first and last available snapshot
+respectively. Otherwise, the arguments are assumed to be Unix timestamp values
+that refer to the earliest snapshot that is not earlier than, or the latest
+snapshot that is not later than the specified value respectively.
<br /><br />
For the sake of the following description, denote the input time series as
@@ -833,15 +739,20 @@ Content-type: text/json
&lt;git repo 2&gt; &lt;git branch 2&gt; \
&lt;diff tolerance&gt; \
&lt;stab tolerance&gt; \
- &lt;ranking&gt; &lt;scope&gt; &lt;max size&gt;
+ &lt;ranking&gt; &lt;scope&gt; &lt;max size&gt; \
+ &lt;test case filter&gt; \
+ &lt;test function filter&gt; \
+ &lt;data tag filter&gt;
</pre>
</td>
<td class="commandDescr">
-For each benchmark in two specific branches within a specific context, this
-command computes the normalized difference between the last result in each
-branch. The output includes the subset of benchmarks whose differences are
-considered most important by some user-defined criteria.
+For each benchmark in two specific branches within a specific context, and
+that also match the filters (<span class="command">&lt;test case
+filter&gt;</span> ...), this command computes the normalized difference
+between the last result in each branch. The output includes the subset of
+benchmarks whose differences are considered most important by some
+user-defined criteria.
<br /><br />
<b>Controlling the output list</b>
diff --git a/doc/bmproto.html b/doc/bmproto.html
index 2cf9d80..d2e70c6 100644
--- a/doc/bmproto.html
+++ b/doc/bmproto.html
@@ -78,82 +78,20 @@ Adds new results to the database.
<!-- ---------------------------------------------------------------------------------- -->
<tr>
-<td class="requestName">GetSnapshots</td>
-<td class="requestDescr">
-Lists snapshots available for a particular context.
-</td>
-
-<td>
-<pre>
-&lt;request type="GetSnapshots"&gt;
- &lt;context testCase="..." testFunction="..."
- dataTag="..." metric="..."
- platform="..." host="..."
- gitRepo="..." gitBranch="..." /&gt;
-&lt;/request&gt;
-</pre>
-</td>
-
-<td>
-<pre>
-&lt;reply type="GetSnapshots"&gt;
- &lt;snapshot timestamp="..." sha1="..." /&gt;
- &lt;snapshot timestamp="..." sha1="..." /&gt;
- ...
-&lt;/reply&gt;
-</pre>
-</td>
-
-</tr>
-
-<!-- ---------------------------------------------------------------------------------- -->
-<tr>
-<td class="requestName">GetBenchmarks</td>
+<td class="requestName">GetMetrics</td>
<td class="requestDescr">
-Lists available benchmarks. Additional entity values (metric, platform, host,
+Lists available metrics. Additional context components (platform, host,
or git repo/branch) may be specified as non-empty values to restrict the
-output to benchmarks for which at least one result exists in combination with
+output to metrics for which at least one result exists in combination with
those values. If all additional entity values are empty, the output will
-include all available benchmarks, even those that haven't been associated with
+include all available metrics, even those that haven't been associated with
any result yet.
</td>
<td>
<pre>
-&lt;request type="GetBenchmarks"&gt;
- &lt;context metric="..." platform="..."
- host="..." gitRepo="..."
- gitBranch="..." /&gt;
-&lt;/request&gt;
-</pre>
-</td>
-
-<td>
-<pre>
-&lt;reply type="GetBenchmarks"&gt;
- &lt;benchmark testCase="..." testFunction="..."
- dataTag="..." /&gt;
- &lt;benchmark testCase="..." testFunction="..."
- dataTag="..." /&gt;
- ...
-&lt;/reply&gt;
-</pre>
-</td>
-
-</tr>
-
-<!-- ---------------------------------------------------------------------------------- -->
-<tr>
-<td class="requestName">GetMetrics</td>
-<td class="requestDescr">
-Behaves similarly to GetBenchmarks (see this).
-</td>
-
-<td>
-<pre>
&lt;request type="GetMetrics"&gt;
- &lt;context testCase="..." testFunction="..."
- dataTag="..." platform="..."
+ &lt;context platform="..."
host="..." gitRepo="..."
gitBranch="..." /&gt;
&lt;/request&gt;
@@ -176,14 +114,13 @@ Behaves similarly to GetBenchmarks (see this).
<tr>
<td class="requestName">GetPlatforms</td>
<td class="requestDescr">
-Behaves similarly to GetBenchmarks (see this).
+Behaves similarly to GetMetrics (see this).
</td>
<td>
<pre>
&lt;request type="GetPlatforms"&gt;
- &lt;context testCase="..." testFunction="..."
- dataTag="..." metric="..."
+ &lt;context metric="..."
host="..." gitRepo="..."
gitBranch="..." /&gt;
&lt;/request&gt;
@@ -206,14 +143,13 @@ Behaves similarly to GetBenchmarks (see this).
<tr>
<td class="requestName">GetHosts</td>
<td class="requestDescr">
-Behaves similarly to GetBenchmarks (see this).
+Behaves similarly to GetMetrics (see this).
</td>
<td>
<pre>
&lt;request type="GetHosts"&gt;
- &lt;context testCase="..." testFunction="..."
- dataTag="..." metric="..."
+ &lt;context metric="..."
platform="..." gitRepo="..."
gitBranch="..." /&gt;
&lt;/request&gt;
@@ -236,14 +172,13 @@ Behaves similarly to GetBenchmarks (see this).
<tr>
<td class="requestName">GetBranches</td>
<td class="requestDescr">
-Behaves similarly to GetBenchmarks (see this).
+Behaves similarly to GetMetrics (see this).
</td>
<td>
<pre>
&lt;request type="GetBranches"&gt;
- &lt;context testCase="..." testFunction="..."
- dataTag="..." metric="..."
+ &lt;context metric="..."
platform="..." host="..." /&gt;
&lt;/request&gt;
</pre>
@@ -267,12 +202,11 @@ Behaves similarly to GetBenchmarks (see this).
Lists statistics and history for a specific benchmark.
<br /><br />
-<b>Note:</b> For the timestamp1 and timestamp2 attributes (defining the
-beginning and end of the snapshot range respectively), the values <i>first</i>
-and <i>last</i> specify the first and last available snapshot
-respectively. Otherwise, the first timestamp refers to the earliest snapshot
-that is not earlier than the specified value, while the second timestamp
-refers to the latest snapshot that is not later than the specified value.
+<b>Note:</b> The value <i>first</i> for timestamp1 specifies the first available
+snapshot, while the value <i>last</i> for timestamp2 specifies the last available
+snapshot. Otherwise, timestamp1 refers to the earliest snapshot that is not
+earlier than the specified value, while timestamp2 refers to the
+latest snapshot that is not later than the specified value.
<br /><br />
<b>Notes:</b>
@@ -452,7 +386,10 @@ two branches.
gitRepo2="..." gitBranch2="..."
diffTolerance="..." stabTolerance="..."
ranking="..." scope="..."
- maxSize="..." /&gt;
+ maxSize="..."
+ testCaseFilter="..."
+ testFunctionFilter="..."
+ dataTagFilter="..." /&gt;
&lt;/request&gt;
</pre>
</td>
diff --git a/doc/er-diagram.dia b/doc/er-diagram.dia
index a4f98d4..c3e342a 100644
--- a/doc/er-diagram.dia
+++ b/doc/er-diagram.dia
Binary files differ