Closed Bug 1953958 Opened 1 year ago Closed 1 year ago

add mach command to auto disable high frequency test failures

Categories

(Testing :: General, task, P2)

task

Tracking

(firefox141 fixed)

RESOLVED FIXED
141 Branch
Tracking Status
firefox141 --- fixed

People

(Reporter: jmaher, Assigned: arnaud.vergnet, NeedInfo)

Details

Attachments

(3 files)

in this bug work will be done to add a command to mach which will download high frequency failures from treeherder and for all tests that meet all criteria, edit the manifest files to disable the tests. The end user can then upload the patch for review as well as do any annotations in bugs.

In some cases this could work where we run this on a test-info job on mozilla-central and it would generate an artifact that would be a patch to disable all relevant tests. We could then have another tool to find the most recent patch, create a bug, reference other bugs, add the proper commit message, and upload to phabricator.

Either way, work needs to be done to make a reliable method for generating a patch to disable tests that meet criteria.

The criteria to use (given what information we have readily accessible today):

  1. bug must be a single tracking bug and have a testcase in the name (i.e. not a crash, or leak)
  2. bug must have >30 failures in the last 7 days
  3. all platforms with at least 7 failures (a platform is os, os_version, os_arch, build_type, i.e. linux1804-64-asan-qr/opt)
  4. if there are any variants that make up 75% of the failures from #2, only use those (i.e. swgl)

Given these 4 criteria, you should be able to find the path + testname from the bug summary, find the related manifest, and add a skip-if condition. We have ./mach manifest skip-fails which does most of the manifest editing, but this might require some editing to input the specific manifest name, test name, and desired condition.

some old code I wrote shows how to query treeherder and find some of the data needed for this bug. It should be updated and use failedplatform.py.

Severity: -- → S2
Priority: -- → P2

all platforms with at least 7 failures (a platform is os, os_version, os_arch, build_type, i.e. linux1804-64-asan-qr/opt)

  • Retriggers can push a platform easily above the threshold.
  • Rarely running platforms will need a higher failure rate to get updated test manifests, e.g. code coverage which only runs for mozilla-central.

thanks for the clarification- I agree there are edge cases.

we can solve retriggers by looking at unique revisions. That makes the query more expensive though, but probably safer.

For things like ccov and other m-c only runs, maybe we can lower the number required to 4 failures in the last 7 days (assuming 24 runs). They key here is building a list of m-c only configs; maybe we live with this for now and focus on auto disabling stuff that meets the rest of the criteria- knowing that some stuff will be high frequency failure and we will not catch it.

Assignee: nobody → arnaud.vergnet
Attachment #9490631 - Attachment description: WIP: Bug 1953958: Add mach command to disable high frequency test failures → Bug 1953958: Add mach command to disable high frequency test failures r=jmaher
Status: NEW → ASSIGNED
Pushed by amarc@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/d928219c12c7 https://hg.mozilla.org/integration/autoland/rev/58c62acdf7e7 Revert "Bug 1953958: Add mach command to disable high frequency test failures r=jmaher" for causing js-bench-sm failures complaining about markdown2 module

Backed out for causing js-bench-sm failures complaining about markdown2 module

Flags: needinfo?(arnaud.vergnet)

this is failing on markdown2 which the js-bench task uses ./mach ... so it ends up importing this new code and cannot find markdown2 on the perf machines (hardware).

We can either:

  • conditionally include high_freq_skipfails.py
  • not use markdown2
  • figure out how to get markdown2 on all platforms
  • maybe something else?
Pushed by amarc@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/61352170e6f5 https://hg.mozilla.org/integration/autoland/rev/fa70f6e6df6d Revert "Bug 1953958: Add mach command to disable high frequency test failures r=jmaher" for causing py3 failures

Backed out for causing py3 failures

Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 141 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: