Changeset 92743 in webkit


Ignore:
Timestamp:
Aug 9, 2011 6:49:02 PM (13 years ago)
Author:
abarth@webkit.org
Message:

garden-o-matic should use huerstics to narrow regression range
https://bugs.webkit.org/show_bug.cgi?id=65948

Reviewed by Dimitri Glazkov.

When analyzing a regression range, if one of the commit messages
mentions the test in question, we now hueristically assume that
revision caused the failure. (I'm shamelessly stealing this idea from
TestFailures.)

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/model.js:
Location:
trunk/Tools
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/model.js

    r92355 r92743  
    4646            commitData.wasReverted = true;
    4747    });
     48}
     49
     50function fuzzyFind(testName, commitData)
     51{
     52    var indexOfLastDot = testName.lastIndexOf('.');
     53    var stem = indexOfLastDot == -1 ? testName : testName.substr(0, indexOfLastDot);
     54    return commitData.message.indexOf(stem) != -1;
     55}
     56
     57function heuristicallyNarrowRegressionRange(failureAnalysis)
     58{
     59    var commitDataList = model.state.recentCommits;
     60    var commitDataIndex = commitDataList.length - 1;
     61
     62    for(var revision = failureAnalysis.newestPassingRevision + 1; revision <= failureAnalysis.oldestFailingRevision; ++revision) {
     63        while (commitDataIndex >= 0 && commitDataList[commitDataIndex].revision < revision)
     64            --commitDataIndex;
     65        var commitData = commitDataList[commitDataIndex];
     66        if (commitData.revision != revision)
     67            continue;
     68        if (fuzzyFind(failureAnalysis.testName, commitData)) {
     69            failureAnalysis.oldestFailingRevision = revision;
     70            failureAnalysis.newestPassingRevision = revision - 1;
     71            return;
     72        }
     73    }
    4874}
    4975
     
    108134            };
    109135
     136            heuristicallyNarrowRegressionRange(failureAnalysis);
     137
    110138            var previousFailureAnalysis = model.state.failureAnalysisByTest[testName];
    111139            if (previousFailureAnalysis
  • trunk/Tools/ChangeLog

    r92717 r92743  
     12011-08-09  Adam Barth  <abarth@webkit.org>
     2
     3        garden-o-matic should use huerstics to narrow regression range
     4        https://bugs.webkit.org/show_bug.cgi?id=65948
     5
     6        Reviewed by Dimitri Glazkov.
     7
     8        When analyzing a regression range, if one of the commit messages
     9        mentions the test in question, we now hueristically assume that
     10        revision caused the failure.  (I'm shamelessly stealing this idea from
     11        TestFailures.)
     12
     13        * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/model.js:
     14
    1152011-07-13  Eric Seidel  <eric@webkit.org>
    216
Note: See TracChangeset for help on using the changeset viewer.