The status of a A/B testing request always eventually becomes "Failed"
authorrniwa@webkit.org <rniwa@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 14 Feb 2015 00:59:20 +0000 (00:59 +0000)
committerrniwa@webkit.org <rniwa@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 14 Feb 2015 00:59:20 +0000 (00:59 +0000)
https://bugs.webkit.org/show_bug.cgi?id=141523

Reviewed by Andreas Kling.

The bug was caused by /api/build-requests always setting the status of a build request to 'failed' when
'failedIfNotCompleted' was sent by the buildbot sync'er.

Fixed the bug by only setting the status to 'failed' if it wasn't set to 'completed'.

* public/api/build-requests.php:
(main):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@180091 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Websites/perf.webkit.org/ChangeLog
Websites/perf.webkit.org/public/api/build-requests.php

index 78026b9..3262f87 100644 (file)
@@ -1,3 +1,18 @@
+2015-02-13  Ryosuke Niwa  <rniwa@webkit.org>
+
+        The status of a A/B testing request always eventually becomes "Failed"
+        https://bugs.webkit.org/show_bug.cgi?id=141523
+
+        Reviewed by Andreas Kling.
+
+        The bug was caused by /api/build-requests always setting the status of a build request to 'failed' when
+        'failedIfNotCompleted' was sent by the buildbot sync'er.
+
+        Fixed the bug by only setting the status to 'failed' if it wasn't set to 'completed'.
+
+        * public/api/build-requests.php:
+        (main):
+
 2015-02-13  Csaba Osztrogon√°c  <ossy@webkit.org>
 
         Unreviewed, remove empty directories.
index 71ecbb1..71a9373 100644 (file)
@@ -28,7 +28,7 @@ function main($path, $post_data) {
             $url = array_get($info, 'url');
             if ($status == 'failedIfNotCompleted') {
                 $db->query_and_get_affected_rows('UPDATE build_requests SET (request_status, request_url) = ($1, $2)
-                    WHERE request_id = $3 AND request_status != $1', array('failed', $url, $id));
+                    WHERE request_id = $3 AND request_status != $4', array('failed', $url, $id, 'completed'));
             } else {
                 if (!in_array($status, array('pending', 'scheduled', 'running', 'failed', 'completed'))) {
                     $db->rollback_transaction();