Title: [204139] trunk/Tools
Revision
204139
Author
[email protected]
Date
2016-08-04 14:07:21 -0700 (Thu, 04 Aug 2016)

Log Message

Optimize bot watcher's dashboard a little
https://bugs.webkit.org/show_bug.cgi?id=160515
rdar://problem/26096900

Reviewed by Lucas Forschler.

Made re-sorting after loading an iteration more efficient.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
(BuildbotIteration.prototype._updateWithData):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
(BuildbotQueue.prototype.updateIterationPosition):

Modified Paths

Diff

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js (204138 => 204139)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js	2016-08-04 21:05:04 UTC (rev 204138)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js	2016-08-04 21:07:21 UTC (rev 204139)
@@ -303,7 +303,7 @@
         this._parseData(data);
 
         // Update the sorting since it is based on the revision numbers that just became known.
-        this.queue.sortIterations();
+        this.queue.updateIterationPosition(this);
 
         this.dispatchEventToListeners(BuildbotIteration.Event.Updated);
     },

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js (204138 => 204139)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js	2016-08-04 21:05:04 UTC (rev 204138)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js	2016-08-04 21:07:21 UTC (rev 204139)
@@ -299,6 +299,28 @@
         return 0;
     },
 
+    // Re-insert the iteration if its sort order changed (which happens once details about it get loaded).
+    updateIterationPosition: function(iteration)
+    {
+        var oldIndex;
+        var inserted = false;
+        for (var i = 0; i < this.iterations.length; ++i) {
+            if (!inserted && this.compareIterations(this.iterations[i], iteration) > 0) {
+                this.iterations.splice(i, 0, iteration);
+                if (oldIndex !== undefined)
+                    break;
+                inserted = true;
+                continue;
+            }
+            if (this.iterations[i] === iteration) {
+                oldIndex = i;
+                if (inserted)
+                    break;
+            }
+        }
+        this.iterations.splice(oldIndex, 1);
+    },
+
     sortIterations: function()
     {
         this.iterations.sort(this.compareIterations.bind(this));

Modified: trunk/Tools/ChangeLog (204138 => 204139)


--- trunk/Tools/ChangeLog	2016-08-04 21:05:04 UTC (rev 204138)
+++ trunk/Tools/ChangeLog	2016-08-04 21:07:21 UTC (rev 204139)
@@ -1,3 +1,18 @@
+2016-08-04  Alexey Proskuryakov  <[email protected]>
+
+        Optimize bot watcher's dashboard a little
+        https://bugs.webkit.org/show_bug.cgi?id=160515
+        rdar://problem/26096900
+
+        Reviewed by Lucas Forschler.
+
+        Made re-sorting after loading an iteration more efficient.
+
+        * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
+        (BuildbotIteration.prototype._updateWithData):
+        * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
+        (BuildbotQueue.prototype.updateIterationPosition):
+
 2016-08-04  Per Arne Vollan  <[email protected]>
 
         [Win] Unable to reliably run tests in parallel
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to