1
0
mirror of https://github.com/golang/go synced 2024-11-18 21:05:02 -07:00
Commit Graph

48 Commits

Author SHA1 Message Date
Dmitriy Vyukov
3eede9be08 dashboard: improve graph view
Several changes as per Russ and Ian requests:

1. Fix almost broken ZoomIn/ZoomOut/Newer/Older with ability zoom in/out and move left/right w/o reloading (the 'explorer' attribute on graph).

2. Start the graph from the current release by default.

3. Allow to select the range of commits by specifying release range (e.g. go1.1 to go1.3 or go1.3 to tip).

4. Make it visually clear that you can select several benchmarks/metrics (replace select with a set of checkboxes).

5. Remove the "absolute" mode. Instead normalize all metrics to the start of the release (start becomes 1.0) and all subsequent changes are relative to it.

LGTM=adg
R=adg
CC=golang-codereviews, iant, rsc
https://golang.org/cl/159980043
2014-10-17 11:34:53 +04:00
Dmitriy Vyukov
4201ff03b5 dashboard: separate build and non-build metrics in perf dashboard
As per Ian request:

>> Let's clearly separate the build numbers from the runtime numbers.
>> The build numbers are interesting but there are many things that
>> affect them.  The runtime numbers are presumably stable.

LGTM=adg
R=adg
CC=golang-codereviews, iant, rsc
https://golang.org/cl/154440043
2014-10-17 11:34:27 +04:00
Dmitriy Vyukov
a0cb59fbc3 dashboard: highlight positive changes
Initially both positive and negative changes had solid background (green and red).
Then we removed background of positive changes due to:
https://code.google.com/p/go/issues/detail?id=8624
However, Ian noted:

"I did intuitively understand that + was an increase and - was a
decrease.  I did not notice how the numbers were segregated between
the third and fourth columns.  Now that you point it out, it is
obvious.  It would be more obvious if the numbers in the fourth column
were highlighted in green."

Give positive changes green *border* (not background),
so they are still visually distinguishable from negative even in grayscale.
This is especially beneficial for perf detail view,
because currently it looks like everything is either
negative or neutral in that view (only red and black).

LGTM=adg
R=adg
CC=golang-codereviews, iant, rsc
https://golang.org/cl/159970043
2014-10-17 11:32:43 +04:00
Russ Cox
46e9d8e060 dashboard/app: ignore, try not to create partial Commits
It looks like the partial Commits are coming from the build breakages mails.
If you have commit A newer than commit B, then there are two code
paths depending on which reports its build result first.
For slow development, B finishes before A is committed, so when
A notices a failure it checks to see if B was okay.
That code path seems to be okay.
For submit of back-to-back changes, typically A finishes before B,
so when B notices an okay it checks to see if A failed.
That code path seems to zero the Commit for A while
trying to set its FailNotificationSent to true.
It does (did) succeed in setting FailNotificationSent to true,
it just zeroed everything else.

This CL adds code to refuse to do the datastore.Put to
update FailNotificationSent if the Commit info is incomplete.

It also tries to ignore Num=0 records, but that may not be
as important anymore.

LGTM=cmang
R=cmang
CC=golang-codereviews
https://golang.org/cl/154080043
2014-10-07 15:37:31 -04:00
Andrew Gerrand
f463296c27 go.tools/dashboard/app: document special error string
TBR=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/152250043
2014-10-07 09:58:49 +11:00
Andrew Gerrand
fcf4a08452 go.tools/dashboard/app: return specific error string on commit not found
TBR=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/153070043
2014-10-06 16:28:27 +11:00
Andrew Gerrand
51be54e32f go.tools/dashboard/app: show main repo commits with no build results
The UI template iterates over ResultGoHashes to display the Commit
rows. This was done for the sub-repository build view, where it
only makes sense to show a row when there's build data for it.

However, in the main page UI we do want to see if a commit has hit
the dashboard but has not yet been built.

This change causes the dashboard to show the commit row even if
there are no build results for it yet.

LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/153010043
2014-10-04 14:18:41 +10:00
Andrew Gerrand
fce07d6ae8 go.tools/dashboard/app: fix integration tests
They had been broken after a few recent changes.

LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/152150043
2014-10-04 08:33:52 +10:00
Andrew Gerrand
8f69c6b2df go.tools/dashboard/app: require version=2 for commit updates
This will prevent older, buggy builders from posting commits.

LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/153930043
2014-10-04 08:25:32 +10:00
Brad Fitzpatrick
29d9ef959c dashboard: more robust commit handler, and allow modifications
LGTM=rsc, adg
R=golang-codereviews, rsc, adg
CC=dvyukov, golang-codereviews
https://golang.org/cl/136540044
2014-09-25 18:06:17 -07:00
Andrew Gerrand
520acf2e17 go.tools/dashboard/app: don't ignore field mismatch errors
This was a hold-over from when we removed install counts years ago.
All the Package entities are well-formed these days.

LGTM=dsymonds
R=dsymonds
CC=golang-codereviews
https://golang.org/cl/138620043
2014-09-18 18:07:02 +10:00
Andrew Gerrand
37340ffc2f go.tools/dashboard: use shorter notification template for cl updates
LGTM=dvyukov
R=dvyukov
CC=golang-codereviews
https://golang.org/cl/139320043
2014-09-12 11:14:03 +10:00
Andrew Gerrand
850afc6bb5 go.tools/dashboard/app: update CL threads with perf notifications
LGTM=dvyukov
R=dvyukov
CC=golang-codereviews, rsc
https://golang.org/cl/135460043
2014-09-08 15:46:41 +10:00
Andrew Gerrand
a455c4c58e go.tools/dashboard/app: drop green coloring from perf dashboard
Fixes golang/go#8624.

LGTM=dave, aram
R=dvyukov, dave, aram
CC=golang-codereviews
https://golang.org/cl/140840043
2014-09-03 12:54:38 +10:00
Dmitriy Vyukov
297fd8229c dashboard/app: actually learn noise levels
LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/135190043
2014-09-01 12:51:14 +04:00
Andrew Gerrand
61ce470a5e go.tools/dashboard/app: fix column order for -temp builders
LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/138760044
2014-08-28 10:57:52 +10:00
Andrew Gerrand
cb487641b8 go.tools/dashboard: fix integration test
LGTM=dvyukov
R=dvyukov
CC=golang-codereviews
https://golang.org/cl/126700043
2014-08-26 17:34:24 +10:00
Andrew Gerrand
51353854a4 go.tools/dashboard: display "-temp" builders last
LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/133000043
2014-08-26 14:49:16 +10:00
Andrew Gerrand
c21a767b2c go.tools/dashboard/app: reject /commit requests from old builders
This is so that we don't corrupt our commit history with reports
from old builders, after the migration to the latest build dashboard.

LGTM=dvyukov
R=dvyukov
CC=golang-codereviews
https://golang.org/cl/130300043
2014-08-20 21:45:01 +10:00
Dmitriy Vyukov
5d476c5293 dashboard/app: dedup changes in UI
Currently for every benchmark/metric we show all changes for all builders x procs.
With 4 builders and 5 procs, that's 20 changes (20 red/green boxes in a single cell).
Instead show only maximum change for every benchmark/metric.
This significantly reduces clutter in UI.
When you click on the red/green box, you can see the rest of the changes.

LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/126430043
2014-08-20 13:24:05 +04:00
Dmitriy Vyukov
1d2a500105 dashboard/app: allow to gob-encode PerfChange
Currently appspot logs say:
delay: gob encoding failed: gob: type build.PerfChange has no exported fields
And I was thinking why it is not sending mails...

LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/125480043
2014-08-20 13:20:12 +04:00
Dmitriy Vyukov
f579fb3656 dashboard/app: eliminate more flakes
Currently we still see some flakes on perf dashboard (e.g. sys-stack is quite frequent).
I am planning to run real perf builder with 5 different values of GOMAXPROCS,
so we can require 3 builders to agree on a change instead of 2.
This will provide 20x improvement in flake detection.
At the same time lower noise bar from 1.2 to 1.1, as I see some real perf changes gets ignored as noise.

All these magic numbers affect only representation of data, but not the data stored in DB.
So we can continue freely tuning them later. There are no significant risks here.

LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/127520044
2014-08-19 16:22:27 +04:00
Andrew Gerrand
92eb99d907 go.tools/dashboard: fix various small UI issues
- stop time column from wrapping,
- fix pagination on front page,
- left-align pagination buttons.

LGTM=dvyukov
R=dvyukov, golang-codereviews
CC=golang-codereviews
https://golang.org/cl/126410043
2014-08-19 20:43:50 +10:00
Andrew Gerrand
2607e9b47a go.tools/dashboard/app: add go.sys to builder package list
LGTM=r
R=r
CC=golang-codereviews
https://golang.org/cl/129030043
2014-08-13 07:55:36 +10:00
Dmitriy Vyukov
9ba88c9a99 dashboard/app: tag 1.3 release
R=adg
TBR=adg
CC=golang-codereviews
https://golang.org/cl/102590043
2014-06-21 07:48:41 +04:00
Andrew Gerrand
707c7629cb dashboard: split key handler into key package, add TimeKey to cache
LGTM=dsymonds
R=golang-codereviews, dsymonds
CC=golang-codereviews
https://golang.org/cl/104780044
2014-06-02 08:39:03 +10:00
Chris Manghane
c309b30e41 go.tools/dashboard: update existing results when builder retries a commit
LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/96360047
2014-05-19 09:51:04 -07:00
Dmitriy Vyukov
240540d096 dashboard: database updater for performance dashboard (server part)
This CL moves code from code.google.com/p/dvyukov-go-perf-dashboard,
which was previously reviewed.

LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/96170043
2014-05-13 11:02:19 +04:00
Dmitriy Vyukov
904c4641c7 dashboard: server app UI changes for performance dashboard
This CL moves code from code.google.com/p/dvyukov-go-perf-dashboard,
which was previously reviewed.

LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/96180043
2014-05-13 11:01:50 +04:00
Dmitriy Vyukov
828191dc1e dashboard: server app changes for performance dashboard
This CL moves code from code.google.com/p/dvyukov-go-perf-dashboard,
which was previously reviewed.
UI part will be submitted separately.

LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/97260043
2014-05-13 11:00:32 +04:00
Andrew Gerrand
58edf2a69d go.tools/dashboard: option to show only "first-class" ports
LGTM=rsc
R=rsc, minux.ma, iant, oleku.konko
CC=golang-codereviews
https://golang.org/cl/81730043
2014-03-31 08:54:14 +11:00
Andrew Gerrand
5893c271ff go.tools/dashboard: include builder in "invalid key" error message
LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/77250043
2014-03-18 16:02:54 +11:00
Andrew Gerrand
ccd43c1d95 go.tools/dashboard/app: send log hash to gobot on build failure
Fixes golang/go#7322.

LGTM=rsc
R=rsc
CC=golang-codereviews
https://golang.org/cl/75630043
2014-03-14 09:51:13 +11:00
Andrew Gerrand
744443b9dc go.tools/dashboard/app: silence solaris11 and dragonfly builders
LGTM=aram, minux.ma
R=minux.ma, jsing, ality, aram, 0intro
CC=golang-codereviews
https://golang.org/cl/69980045
2014-03-04 11:53:58 +11:00
Andrew Gerrand
b277773706 go.tools/dashboard/app: tweak build column order
LGTM=rsc
R=rsc
CC=golang-codereviews
https://golang.org/cl/63590043
2014-02-14 11:35:50 +11:00
Andrew Gerrand
8aae138131 go.tools/dashboard/app: update bad builder list
LGTM=r
R=r, minux.ma
CC=golang-codereviews
https://golang.org/cl/57580043
2014-01-28 17:59:29 +11:00
Andrew Gerrand
5cb6365d33 go.tools/dashboard/app: show sub-repository build history
LGTM=cmang
R=adonovan, gobot, cmang
CC=golang-codereviews
https://golang.org/cl/56410043
2014-01-28 14:30:48 +11:00
Andrew Gerrand
3b2989e9ea go.tools/dashboard: update CL on build failure
Only send mail to golang-dev if updating the CL fails.

R=golang-codereviews, dvyukov, minux.ma, rsc
CC=golang-codereviews
https://golang.org/cl/43760043
2014-01-24 14:52:23 +11:00
Andrew Gerrand
3342856161 go.tools/dashboard/app: sort builder columns in a more useful manner
Supported operating systems first, then race builders, then the rest.

R=r, bradfitz
CC=golang-codereviews
https://golang.org/cl/56190043
2014-01-24 09:13:34 +11:00
Dmitriy Vyukov
676ac131e1 dashboard/app: properly limit commit description length
Ensure that we do not split UTF-8 rune in half.
Otherwise appengine python scripts will break badly.

R=adg, r
CC=golang-dev
https://golang.org/cl/42530043
2013-12-17 12:14:27 +04:00
Chris Manghane
2cbda9de61 go.tools/dashboard: Fix incorrect parsing of log hash.
R=adg
CC=golang-dev
https://golang.org/cl/43000043
2013-12-16 14:50:09 -08:00
Andrew Gerrand
05f8c7dc66 go.tools/dashboard/app: app index.yaml
This is equivalent to the previously-reviewed change to Dmitry's
performance dashboard repo clone:
https://golang.org/cl/35490043

R=golang-dev, dave
CC=golang-dev
https://golang.org/cl/39840043
2013-12-10 16:43:15 +11:00
Andrew Gerrand
922f326cd7 go.tools/dashboard/app: fix tests and add TODO to reall fix them
This change is a really nasty hack to preserve the magic header
across requests. The nasty hack will go away once we refactor these
tests to use the new "appengine/aetest" package instead.

R=golang-dev, dvyukov
CC=golang-dev
https://golang.org/cl/39230043
2013-12-10 15:30:35 +11:00
Andrew Gerrand
55fb2e8e28 go.tools/dashboard/app: only accept commits when given master key
R=dvyukov, rsc
CC=golang-dev
https://golang.org/cl/37790044
2013-12-09 14:33:08 +11:00
Dmitriy Vyukov
23d25a2ed7 dashboard/app: do not send unnecessary data in todo response
R=adg
CC=golang-dev
https://golang.org/cl/30350043
2013-11-25 10:15:56 +04:00
Chris Manghane
691b055ea6 go.tools/dashboard: Make sure links to commits and logs are dashboard specific.
R=adg
CC=golang-dev
https://golang.org/cl/14297043
2013-10-02 15:55:44 -07:00
Chris Manghane
7bcc81e644 go.tools/dashboard: add gccgo build dashboard.
This change adds a new build dashboard url to the existing appengine app: $dashurl/gccgo/ which will show the build status of gccgo.
* Added Dashboard struct with exported Name, Rel(ative)Path, and Packages fields.
* Added Dashboard Context method that returns an appengine context with a namespace corresponding to the dashboard's name.
* Modified HandlerFuncs to use Dashboard's Context method for all appengine requests.
* Modified ui template to show different title/header for separate dashboard and added dashboard tab.

R=adg
CC=golang-dev
https://golang.org/cl/13753043
2013-09-23 17:06:49 -07:00
Chris Manghane
a705311956 go.tools: add dashboard
Moving misc/dashboard to its new home. It will be deleted
(except for misc/dashboard/codereview) from its current home
if this is approved.

R=golang-dev, bradfitz, cmang, adg
CC=golang-dev
https://golang.org/cl/12180043
2013-08-01 13:23:51 +10:00