Closed Bug 1465588 Opened 6 years ago Closed 6 years ago

Consider removing dashboard code

Categories

(Tree Management :: Perfherder, enhancement, P1)

enhancement

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: wlach, Assigned: sclements)

References

Details

Attachments

(2 files)

:rwood added some generic dashboard code back in the day which was very useful for e10s, hasal, and something other things. However, it seems like this hasn't been used much lately. To save the hassle of converting it to react with the rest of perfherder/treeherder, I would suggest removing it for now. It will still be in version history if we want to use it as inspiration later.

:rwood -- do you have any objections to doing this? If not this might make a good bug to work on before the rest of the perfherder react conversion.
Flags: needinfo?(rwood)
It depends if we foresee the need for a similar dashboard. At one point I believe we were planning to have a similar one for talos vs talos with webrender (?). If that's not needed anymore, and :jmaher doesn't see the need for a similar comparison type of dashboard in the future then I'm all for removing the code.
Flags: needinfo?(rwood) → needinfo?(jmaher)
I don't think that's really the question though?

If a dashboard *is* needed in the future, then "remove framework remnants now, add a full React dashboard later" is basically the same amount of work as "convert framework remnants to React now, populate new dashboard implementation later". (And arguably less work, since it will allow seeing the wood for the trees.)

However if a dashboard *isn't* needed in the future, then "remove framework remnants for now" saves a lot of wasted effort.

As such, removing now seems preferable - unless there is a factor we've overlooked? :-)
we will probably have a new dashboard in July to compare firefox vs chrome for benchmarks in perfherder...so yeah, we will be using this relatively soon.
Flags: needinfo?(jmaher)
(In reply to Joel Maher ( :jmaher ) (UTC-4) from comment #3)
> we will probably have a new dashboard in July to compare firefox vs chrome
> for benchmarks in perfherder...so yeah, we will be using this relatively
> soon.

Depending on the requirements, maybe it makes more sense to create this new dashboard outside of perfherder (just calling perfherder api endpoints), perhaps as a seperate (maybe even react-based) site?

Anyway, we can leave the code for now to keep our options open.
I am fine with an external dashboard- in fact that makes a lot of sense to keep perfherder simpler.  I think we had aspirations of making a generic compare view between user defined parameters- that seems unrealistic.

From my point of view knowing nothing about react, working with an existing template as prior art is a quick way to solve the problem.  Making something standalone requires an endpoint to hit, but either way- if there is prior art I can be the one editing/creating dashboards without needing to spend a month (realistic time to get 40 hours of focus time) learning react.
(In reply to Joel Maher ( :jmaher ) (UTC-4) from comment #5)
> I am fine with an external dashboard- in fact that makes a lot of sense to
> keep perfherder simpler.  I think we had aspirations of making a generic
> compare view between user defined parameters- that seems unrealistic.
> 
> From my point of view knowing nothing about react, working with an existing
> template as prior art is a quick way to solve the problem.  Making something
> standalone requires an endpoint to hit, but either way- if there is prior
> art I can be the one editing/creating dashboards without needing to spend a
> month (realistic time to get 40 hours of focus time) learning react.

Makes sense, I think iodide (https://github.com/iodide-project/iodide) might be a promising solution for small projects like these, being quickly able to develop small interactive dashboards with custom behaviour is one of its main use cases. We could probably port a lot of the existing compare logic to a notebook without much trouble. Ping me when the time comes and we can discuss. :)
Let me know if there's anything for me.

For the curious, here's a prototype (read clunky) that hits the various Perfherder APIs to plot various benchmarks:
https://perf-goggles.netlify.com/linux64/ARES6
Can someone please update me on what specifically should not be converted for the dashboard, if anything?
Thanks for checking in here :sclements.  As we are moving to a trend to use Armen's new graphing libraries and making perfherder be a data source/sheriffing tool, then I would like to say remove the comparison dashboard code.

The code would be related to these files:
https://github.com/mozilla/treeherder/commit/4bee8f1702ca20349ad3dc52743bce155fb0acb8#diff-086c5ae474e8466cb5a2c8b5d9694bdc

we used to have these easily accessible from perfherder, but haven't used them in a long time.
Assignee: nobody → sclements
Status: NEW → ASSIGNED
Priority: -- → P1
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Could you open a follow-up PR to address the remaining review comments?
https://github.com/mozilla/treeherder/pull/4211#discussion_r229649135
https://github.com/mozilla/treeherder/pull/4211#discussion_r229649624
Status: RESOLVED → REOPENED
Flags: needinfo?(sclements)
Resolution: FIXED → ---
Flags: needinfo?(sclements)
(above pull request #4222 addresses missed review comments)
Commit pushed to master at https://github.com/mozilla/treeherder

https://github.com/mozilla/treeherder/commit/e590908b69c3d5ffef3b36fca7de15b366588617
Bug 1465588 - Remove dead perf dashboard code part2 (#4222)

remove baseTitle and newTitle values from compare.js and into comparetable.html partial. Remove releaseBlockerCriteria, unused 'blocker' refs and getTrendMap method from compare.js. Delete comparetable partial and trendtable partials .
Status: REOPENED → RESOLVED
Closed: 6 years ago6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: