Closed Bug 1332323 Opened 3 years ago Closed 2 months ago

"file bug" in perfherder alerts should auto-suggest blocking bug + component based on commit range of regression

Categories

(Tree Management :: Perfherder, enhancement, P3)

enhancement

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: wlach, Unassigned)

Details

In many cases (though not all), it is obvious that a performance regression was caused by a single bug. A good example might be:

https://treeherder.mozilla.org/perf.html#/alerts?id=4831

which has a pushlog like this:

https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=5b6e3ddaa0894dccf93c381eae4d83b74f29818e&tochange=8d8e6116ed6ddbd99a528fcd8911e559336b938f

It would save a little bit of time if Perfherder was smart enough to fill in the "blocks" and the product / component fields based on the commits in the regression range.

The logic would look like this:

1. Query hg for the commit messages in the push range
2. If (and only if) there is only a single bug number in the commit range, look up the product/component of that bug via the bugzilla API and put that in the link (as opposed to Firefox/Untriaged). Also in this case we would set the bug to "block" the bug that we found.

The code in question is here:

https://github.com/mozilla/treeherder/blob/master/ui/js/controllers/perf/alerts.js#L3

I think it should be possible to implement this solution in JavaScript inside the file above. You would need to research the hg and bugzilla api's in order to implement what I'm talking about. To test, I would recommend pointing the treeherder development server against the staging site, which has lots of untriaged alerts.
Hi William,
Kinda New to perfherder. Please Guide me through this.
(In reply to George Veneel Dogga [::TheLayman] from comment #1)
> Hi William,
> Kinda New to perfherder. Please Guide me through this.

Hi George, great! I would start by setting up a treeherder development environment for the web front end:

http://treeherder.readthedocs.io/ui/installation.html

Once you have that working, you should be set up to start hacking on code (I would start with the link above). You will probably need to do some research on the bugzilla and hg api's and how to call them from the perfherder codebase. Please do as much research by yourself as you can, but feel free to ask questions on #perfherder if you're stuck.
Assignee: nobody → georgeveneeldogga
Status: NEW → ASSIGNED
Assignee: georgeveneeldogga → nobody
Status: ASSIGNED → NEW
Priority: -- → P3
:igoldan, maybe something to pick up in the round2 of changes to tools/process for the code sheriffs- maybe put it in your list of work items if you think it would be useful.
Type: defect → enhancement

This ticket is much older than 18 months, thus closing it as INCOMPLETE.

Status: NEW → RESOLVED
Closed: 2 months ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.