Commit Graph

159 Commits

Author SHA1 Message Date
Andrew Gerrand 6735829fe0 dashboard: create notion of a builder version
Don't accept results from old builders once we cut over to the git
dashboard.

Change-Id: I1087b9fa174542ecfc7251c13f4319f51eca17b6
Reviewed-on: https://go-review.googlesource.com/1358
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2014-12-12 00:07:45 +00:00
Andrew Gerrand 6f3c548bba dashboard: make git dashboard the default
Also bump the watcher version, so the old watcher doesn't try to write
to the new dashboard.

Change-Id: I7f62ad937fe162dadfd1222f56a3c5e493be9a61
Reviewed-on: https://go-review.googlesource.com/1357
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2014-12-11 23:38:39 +00:00
Andrew Gerrand 9df76cfcdb dashboard/watcher: use commit date, not author date
Commit date is what is relevant to the dashboard.

Change-Id: I807492768c8f7dcbf9ee6bdc233976cb25ee8647
Reviewed-on: https://go-review.googlesource.com/1356
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2014-12-11 23:19:37 +00:00
Dmitry Vyukov 93f9911d07 dashboard: tell perf dashboard about release 1.4
Change-Id: I074b12a155278cb2a53414cd1f9abf650df8e89d
Reviewed-on: https://go-review.googlesource.com/1381
Reviewed-by: Andrew Gerrand <adg@golang.org>
2014-12-11 22:29:06 +00:00
Andrew Gerrand 0ea69b51f7 dashboard/builder: re-set -dash default to hg dashboard
Change-Id: Ia52dd20c6ad927bbe32450c437e202c4695980af
Reviewed-on: https://go-review.googlesource.com/1292
Reviewed-by: Andrew Gerrand <adg@golang.org>
2014-12-10 04:17:47 +00:00
Chris Manghane 8f92739d3e dashboard/builder: add -gccopts flag; use shallow clones for gccgo
Change-Id: I3a48e2f664996bf99bb8a7f850d876731dd80808
Reviewed-on: https://go-review.googlesource.com/1253
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2014-12-10 00:23:55 +00:00
David Symonds 24257c8cd2 tools: add import comments.
Change-Id: Idda6e64580432cb9a731e4ebf4005ee4ceb4202d
Reviewed-on: https://go-review.googlesource.com/1244
Reviewed-by: Andrew Gerrand <adg@golang.org>
2014-12-09 22:42:16 +00:00
Brad Fitzpatrick d7df296309 dashboard/env: update linux builder Dockerfile to use git, update builder
Uses a builder that can build both hg & git. (Should fix the git
subrepos on the main dashboard currently)

Change-Id: I3af96e35d40f6397625730b812a288f36622cb8a
Reviewed-on: https://go-review.googlesource.com/1203
Reviewed-by: Andrew Gerrand <adg@golang.org>
2014-12-09 06:07:41 +00:00
Brad Fitzpatrick 98c15d46be dashboard/builder: change default gcpath back to hg for now
We're doing this so we can update the main builders to fix the
problems with subrepos. The coordinator doesn't know how to
pass -gcpath to this.

We can change it back to git after Go 1.4 is out.

Change-Id: I3924a34ac974cb77954acea4772ef0f52e36fa45
Reviewed-on: https://go-review.googlesource.com/1202
Reviewed-by: Andrew Gerrand <adg@golang.org>
2014-12-09 05:52:49 +00:00
Brad Fitzpatrick d76ba60748 dashboard/builder: don't use vcs TagSync to update a path to a hash
Change-Id: Ic4bbcb294995483482f51e3539b9ba8a741d1a98
Reviewed-on: https://go-review.googlesource.com/1245
Reviewed-by: Andrew Gerrand <adg@golang.org>
2014-12-09 05:20:41 +00:00
Andrew Gerrand 24a7fa781c x/tools/dashboard/watcher: various fixes
Report master branch commits first.
Display branch name in log message.
Send branch name to dashboard.
Better error messages.
Remove redundant TODO.

Change-Id: Ib37943a38b88626cf4bb56420b488e2452ce262b
Reviewed-on: https://go-review.googlesource.com/1173
Reviewed-by: David Symonds <dsymonds@golang.org>
2014-12-08 07:33:24 +00:00
Andrew Gerrand 97f1340e43 x/tools/dashboard/app: record branch names, disallow multiple first commits
Change-Id: I3fed749bb0b5c2084a490eb4c6696c4555a0ac9c
Reviewed-on: https://go-review.googlesource.com/1174
Reviewed-by: David Symonds <dsymonds@golang.org>
2014-12-08 07:31:26 +00:00
Andrew Gerrand 2d24bddc61 x/dashboard/app: update sub-repo list (+mobile, +text, -codereview)
LGTM=dsymonds
R=dsymonds
CC=golang-codereviews
https://golang.org/cl/176610044
2014-12-08 10:37:26 +11:00
Andrew Gerrand 7e91bb35f8 x/tools/dashboard/watcher: convert to git
LGTM=dsymonds
R=bradfitz, dsymonds
CC=golang-codereviews
https://golang.org/cl/177660043
2014-12-04 10:47:26 +11:00
Andrew Gerrand 2d83fa5bf1 x/tools/dashboard/app: update to support git
This adds a "Git" dashboard at "/git/", which has its own namespace for
datastore and memcache. Once we have pushed out the new git repositories
we will spin up a commit watcher and builders that point to the Git
dashboard.

Once we are ready to switch the dashboard over to the new Git builders,
the (*Dashboard).Context method will be changed to return "Git"
as the default namespace. The old builders will be retired, and the
new builders will be configured to report to "/" instead of "/git/".
At that point all our old data will still be available in the default
namespace, but hidden from view.

LGTM=dsymonds, cmang
R=bradfitz, cmang, dsymonds, adg
CC=golang-codereviews
https://golang.org/cl/183050043
2014-12-04 10:45:11 +11:00
Andrew Gerrand 4ed659d592 x/tools/dashboard/builder: support git; remove commit watcher
This binary isn't intended to support hg anymore.
It almost might not support gccgo; I'm not sure.
But there'll be more work to do there anyway.

LGTM=dave, bradfitz, cmang
R=cmang, bradfitz, dave, adg
CC=golang-codereviews
https://golang.org/cl/181520043
2014-12-04 10:43:53 +11:00
Chris Manghane 9393b17080 dashboard/env: add go-commit-watcher image
LGTM=bradfitz
R=bradfitz, adg
CC=adg, golang-codereviews
https://golang.org/cl/179370043
2014-12-01 09:59:02 -08:00
Andrew Gerrand 8dfc1ba4d0 x/tools/dashboard/app: have cron.yaml point to build.golang.org
LGTM=dvyukov
R=dvyukov
CC=golang-codereviews
https://golang.org/cl/174600043
2014-11-24 18:08:25 +11:00
Andrew Gerrand 33b1bf3b85 x/tools/dashboard/env: bump known good builder revision
LGTM=dsymonds
R=dsymonds
CC=golang-codereviews
https://golang.org/cl/176900043
2014-11-17 13:08:44 +11:00
Andrew Gerrand 9920aceb57 x/tools/dashboard/builder: only write VERSION file if it doesn't exist
LGTM=dsymonds
R=dsymonds
CC=golang-codereviews
https://golang.org/cl/172610043
2014-11-17 12:06:56 +11:00
Andrew Gerrand c2c2cf49ad x/tools/dashboard/app: ignore freebsd-arm failures
The previous instance of this change was applied to the release branch.
I don't know why the codereview plugin allowed me to do this.
Thankfully we won't be using it for much longer.

TBR=dfc
R=dave
CC=golang-codereviews
https://golang.org/cl/175870044
2014-11-17 11:32:13 +11:00
Andrew Gerrand c05aea77a9 x/tools/dashboard/app: use ?branch=foo to show foo branch commits
LGTM=rsc
R=bradfitz, rsc
CC=golang-codereviews
https://golang.org/cl/167660043
2014-11-13 21:53:13 +11:00
Andrew Gerrand ab43333964 x/tools/dashboard/app: respect gohash in Commit.AddResult
This should fix the issue where results sub-repo results are clobbered
by subsequent commits. (Much like the previous fix, which only
fixed the issue for main repo commits.)

TBR=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/167440044
2014-11-10 13:58:29 +11:00
Andrew Gerrand 8bd0dd9d19 x/tools/dashboard/coordinator: provide build key in / and /root
LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/170260044
2014-11-10 13:22:35 +11:00
Andrew Gerrand df7f175a64 x/tools/dashboard/app: revert sub-repo path rename
We're going to keep the old paths in the dashboard until
after Go 1.4 is out the door.

TBR=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/169240044
2014-11-10 13:21:57 +11:00
Andrew Gerrand 42bbc3ebf0 x/tools/dashboard/app: prevent builders from nuking other results
This fixes the issue where a builder would occasionally wipe out
the results from another builder.

LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/172150043
2014-11-10 13:18:31 +11:00
Andrew Gerrand 3ee677ac1c go.tools/dashboard/env: use newer builder
This version of the builder can handle the new golang.org/x/ paths.

LGTM=bradfitz
R=bradfitz
CC=golang-codereviews
https://golang.org/cl/174750043
2014-11-10 11:49:19 +11:00
Andrew Gerrand bdb10cf821 go.tools/dashboard/builder: rewrite sub-repo paths before 'go get' and 'go test'
The dashboard still uses the old "code.google.com/p/go.*" import paths.
Rewrite them to the new "golang.org/x/*" before running 'go get' and 'go test'.

Update golang/go#9079.

LGTM=rsc
R=rsc, bradfitz
CC=golang-codereviews
https://golang.org/cl/174740043
2014-11-10 10:42:45 +11:00
Andrew Gerrand 5ebbcd132f go.tools: use golang.org/x/... import paths
Rewrite performed with this command:
  sed -i '' 's_code.google.com/p/go\._golang.org/x/_g' \
    $(grep -lr 'code.google.com/p/go.' *)

LGTM=rsc
R=rsc
CC=golang-codereviews
https://golang.org/cl/170920043
2014-11-10 08:50:40 +11:00
Andrew Gerrand cf285cde60 go.tools/dashboard/app: fix tests
TBR=dvyukov
R=dvyukov, bradfitz
CC=golang-codereviews
https://golang.org/cl/165740043
2014-10-31 09:04:03 +11:00
Andrew Gerrand cce262cd47 go.tools/dashboard/app: remove redundant transaction
The code is already called from inside a transaction.

TBR=dvyukov
R=dvyukov
CC=golang-codereviews
https://golang.org/cl/161580045
2014-10-31 09:03:27 +11:00
Andrew Gerrand 113eb67ee0 go.tools/dashboard/app: update commit in transaction on perf regression
The sendPerfFailMail function populated a dummy commit value and
then calls commonNotify, which then updated and stored that dummy
commit, hosing the original commit entity.

LGTM=rsc
R=rsc, bradfitz, dvyukov
CC=golang-codereviews
https://golang.org/cl/164960043
2014-10-28 11:25:09 +11:00
Aram Hăvărneanu 818b91e9f2 go.tools/dashboard: remove Solaris builders from flaky builders list
solaris-amd64-solaris11 has been the most stable builder,
by far, over the last 9 months. solaris-amd64-smartos is
stable too and it's our fastest builder.

LGTM=bradfitz
R=golang-codereviews, bradfitz
CC=adg, dave, golang-codereviews
https://golang.org/cl/163280043
2014-10-27 17:31:13 +01:00
Dmitriy Vyukov 74dcdae16a dashboard: fix update script
It needs to remove perf results rather than build results.

LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/164000043
2014-10-27 13:07:50 +03:00
Dmitriy Vyukov 0b5a61fa3a dashboard: fix typo
LGTM=bradfitz
R=adg, bradfitz
CC=golang-codereviews
https://golang.org/cl/162180043
2014-10-27 13:07:31 +03:00
Andrew Gerrand 0d5881e51c go.tools/dashboard: don't notify on failures from flaky plan9 builder
LGTM=dvyukov
R=golang-codereviews, dvyukov
CC=golang-codereviews
https://golang.org/cl/157580043
2014-10-27 20:56:27 +11:00
Dmitriy Vyukov a7be953466 dashboard: always run bench binary with timeout
When the tree is particularly broken,
even the first invocation of bench binary that queries list
of benchmarks can hang.
Fixes golang/go#8844.

LGTM=bradfitz
R=adg, bradfitz
CC=golang-codereviews
https://golang.org/cl/162160043
2014-10-24 21:05:24 +04:00
Dmitriy Vyukov e419b2a606 dashboard: extend builder logging
Current response logging logs either nil or pointer value
(e.g. "dash -> {0xc20802e058}"). Not very useful.
Log actual response data.

LGTM=bradfitz
R=adg, bradfitz
CC=golang-codereviews
https://golang.org/cl/163860043
2014-10-24 21:04:13 +04:00
Dmitriy Vyukov d183041bb0 dashboard: update update script to delete Commit.PerfResult
This is required to repair perf data in the datastore.
Update golang/go#8930.

LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/158320043
2014-10-22 17:44:46 +04:00
Andrew Gerrand 501f6851f9 go.tools/dashboard: silence notifications from netbsd-amd64-bsiegert
It is a flaky builder.

LGTM=dave
R=golang-codereviews, dave
CC=golang-codereviews
https://golang.org/cl/155620047
2014-10-22 11:54:29 +11:00
Luit van Drongelen db0461cf4c dashboard: images should be fetched from HTTPS
Revision 184f9219148f (from review 152790043) introduced a new image,
linux-x86-clang, and the url is missing the `s` for TLS.

LGTM=adg
R=bradfitz, golang-codereviews, adg
CC=golang-codereviews
https://golang.org/cl/156480043
2014-10-22 09:33:04 +11:00
Dmitriy Vyukov 78ab88e721 dashboard: fix perf graph view
1. Add missing comma to empty records after addition of Ann column.
2. Fix off-by-one in commit range calculation.
Release tags refer to the last commit of the release,
so there is no need to subtract 1 from them.

TBR=adg
R=adg, bradfitz
CC=golang-codereviews
https://golang.org/cl/157120043
2014-10-18 14:39:02 +04:00
Dmitriy Vyukov e2b4e09ae1 dashboard: ensure that we ever store valid commits
LGTM=bradfitz
R=bradfitz
CC=golang-codereviews, rsc
https://golang.org/cl/160960043
2014-10-17 14:51:03 +04:00
Dmitriy Vyukov 444afab9dd dashboard: add Help button to perf pages
As per Russ' request I've described perf dashboard here:
https://code.google.com/p/go-wiki/wiki/PerfDashboard
And adding links to that page.

LGTM=bradfitz
R=adg, rsc, bradfitz
CC=golang-codereviews
https://golang.org/cl/153620045
2014-10-17 13:56:22 +04:00
Dmitriy Vyukov be0f29f178 dashboard: fix perf builder
One of these "how it ever worked?.." moments.

LGTM=bradfitz
R=adg, bradfitz
CC=golang-codereviews
https://golang.org/cl/158980045
2014-10-17 13:51:23 +04:00
Dmitriy Vyukov 2a277d9349 dashboard: further improve graph view
1. Don't interpolate missing data points,
instead just use the previous value for missing points.
Interpolation hides significant line jumps,
making it look like the jump is a result of several small changes.
2. Add annotations for significant changes.

LGTM=adg
R=adg
CC=golang-codereviews, iant, rsc
https://golang.org/cl/154360046
2014-10-17 12:17:50 +04:00
Dmitriy Vyukov 165ed12db1 dashboard: fix pagination on perf page
Currently the 'latest' button on perf page leads to build page.

LGTM=adg
R=adg
CC=golang-codereviews
https://golang.org/cl/159990044
2014-10-17 12:17:35 +04:00
Dmitriy Vyukov ddb83b4815 dashboard: faster perf data fetching
Use single query to fetch commit runs and metric runs (instead of individual selects).
Hopefully this enables some kind of prefetching.
But more importantly it allows to work around "gaps" in commit nums,
as we only fetch data that is actually in the database
and don't try to query all commit runs in the "gap".

LGTM=adg
R=adg
CC=golang-codereviews, rsc
https://golang.org/cl/159910045
2014-10-17 11:38:11 +04:00
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