dashboard/app: benchmarking support (data model + builder handlers)
Adds new fields PerfBenchmarks and Benchmark to Commit.
Adds new entities -- CommitRun, PerfResult, PerfMetricRun, PerfTodo and PerfConfig.
Adds new "benchmark-go-commit" todo.
Adds perf-result handler.
The design doc:
https://docs.google.com/a/google.com/document/d/10KInCeTYmpk7UZZLDGNktsisjctQnfm7FfOtr8RbFks/pub
https://codereview.appspot.com/35480043/diff/90001/dashboard/app/build/handler.go File dashboard/app/build/handler.go (right): https://codereview.appspot.com/35480043/diff/90001/dashboard/app/build/handler.go#newcode117 dashboard/app/build/handler.go:117: cr, err := GetCommitRun(c, com.Num) This does not work ...
12 years, 5 months ago
(2013-12-03 07:25:34 UTC)
#2
https://codereview.appspot.com/35480043/diff/90001/dashboard/app/build/handle...
File dashboard/app/build/handler.go (right):
https://codereview.appspot.com/35480043/diff/90001/dashboard/app/build/handle...
dashboard/app/build/handler.go:117: cr, err := GetCommitRun(c, com.Num)
This does not work as of now -- it fails with "transaction touches several
entity groups", because can go to a subrepo, but CommitRuns are currently always
descendants of main Package.
We have 2 choices:
1. Do not update CommitRun's for commits that does not need benchmarking (in
particular go to subrepos)
2. Make CommitRun descendants on a proper Package
I think we need to do both.
There is no particular value in CommitRun for non-benchmark commits. And we can
always recreate them solely on server (no need for builder interaction, all info
is already on the server).
https://codereview.appspot.com/35480043/diff/90001/dashboard/app/build/handle...
dashboard/app/build/handler.go:337: t := datastore.NewQuery("Commit").
this needs to scan CommitRun's
12 years, 5 months ago
(2013-12-03 16:32:07 UTC)
#3
PTAL
https://codereview.appspot.com/35480043/diff/90001/dashboard/app/build/handle...
File dashboard/app/build/handler.go (right):
https://codereview.appspot.com/35480043/diff/90001/dashboard/app/build/handle...
dashboard/app/build/handler.go:117: cr, err := GetCommitRun(c, com.Num)
On 2013/12/03 07:25:35, dvyukov wrote:
> This does not work as of now -- it fails with "transaction touches several
> entity groups", because can go to a subrepo, but CommitRuns are currently
always
> descendants of main Package.
> We have 2 choices:
> 1. Do not update CommitRun's for commits that does not need benchmarking (in
> particular go to subrepos)
> 2. Make CommitRun descendants on a proper Package
>
> I think we need to do both.
> There is no particular value in CommitRun for non-benchmark commits. And we
can
> always recreate them solely on server (no need for builder interaction, all
info
> is already on the server).
Done
https://codereview.appspot.com/35480043/diff/90001/dashboard/app/build/handle...
dashboard/app/build/handler.go:337: t := datastore.NewQuery("Commit").
On 2013/12/03 07:25:35, dvyukov wrote:
> this needs to scan CommitRun's
Done.
LGTM https://codereview.appspot.com/35480043/diff/180001/dashboard/app/build/test.go File dashboard/app/build/test.go (right): https://codereview.appspot.com/35480043/diff/180001/dashboard/app/build/test.go#newcode229 dashboard/app/build/test.go:229: defer func() { what does this accomplish?
12 years, 5 months ago
(2013-12-04 21:51:38 UTC)
#9
On 5 December 2013 13:09, <dvyukov@google.com> wrote: > w/o this it crashes in net/http guts ...
12 years, 5 months ago
(2013-12-05 02:21:10 UTC)
#11
On 5 December 2013 13:09, <dvyukov@google.com> wrote:
> w/o this it crashes in net/http guts when the handler finishes
> actually I am not sure how kosher this is
> but at least it works right now, as opposed to current code
>
That's weird. Oh well. We can fix it and use appengine/aetest to make all
this a bit easier.
Andrew
Issue 35480043: code review 35480043: dashboard/app: benchmarking support (data model + build...
(Closed)
Created 12 years, 5 months ago by dvyukov
Modified 12 years, 5 months ago
Reviewers:
Base URL:
Comments: 18