Closed Bug 1796603 Opened 2 years ago Closed 1 year ago

Metadata update still sometimes makes unnecessary updates

Categories

(Testing :: web-platform-tests, defect)

Default
defect

Tracking

(firefox115 fixed)

RESOLVED FIXED
115 Branch
Tracking Status
firefox115 --- fixed

People

(Reporter: jgraham, Assigned: jgraham)

References

Details

Attachments

(2 files)

Despite the changes in 1579168 we're still seeing unnecessary changes in metadata updates including e.g. changing [OK, TIMEOUT] to [TIMEOUT, OK], or reordering unchanged fields.

For intermittents in particular, we'd like the update to enforce the invariant that we don't make automatic changes as long as the new field value is a subset of the old field value (i.e. if something matches a rule with expected: [PASS, FAIL, TIMEOUT] and the new data suggests a rule of [FAIL, PASS] we shouldn't make an update).

The severity field is not set for this bug.
:jgraham, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(james)
Severity: -- → S2
Flags: needinfo?(james)
Severity: S2 → S3

Previously we had the idea that if we had a test marked e.g. [OK,
TIMEOUT] but we saw more timeouts that fails we might want to update
this to [TIMEOUT, OK]. In practice this adds a lot of unnecessary
churn, and not much value.

The most basic thing we can do here is simply not run metadata updates
at all for a test when all of the results we get are either expected
or part of the known intermittents.

Assignee: nobody → james
Status: NEW → ASSIGNED

If we have to update some of the metadata for a test (e.g. because one
subtest got different results), for the subtests that didn't change we
want to avoid creating new conditions where possible.

Previously we reused existing conditions in the case that all the new
values for run info matching that condition were the same, but didn't
handle the case that the values are different, but subsets of the
existing value.

This adds additional handling for the subset case, so that when we
have a condition like [TIMEOUT, OK] and various runs give a mix of
those existing values, we just reuse the existing conditional rather
than creating more specific ones.

There are some r+ patches which didn't land and no activity in this bug for 2 weeks.
:jgraham, could you have a look please?
If you still have some work to do, you can add an action "Plan Changes" in Phabricator.
For more information, please visit BugBot documentation.

Flags: needinfo?(james)
Flags: needinfo?(aborovova)
Flags: needinfo?(james)
Flags: needinfo?(aborovova)
Pushed by james@hoppipolla.co.uk: https://hg.mozilla.org/integration/autoland/rev/24074bb9dbe1 Don't mark test for update if all statuses are in known intermittents, r=Sasha https://hg.mozilla.org/integration/autoland/rev/40cf739f51d9 Reuse existing conditions when all values are subsets of the existing value, r=Sasha
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/39961 for changes under testing/web-platform/tests
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 115 Branch
Upstream PR merged by moz-wptsync-bot
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: