Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(198)

Issue 2226583003: Add build scheduler DB interface, dumb in-memory impl, cache (Closed)

Created:
4 years, 4 months ago by borenet2
Modified:
4 years, 4 months ago
Reviewers:
dogben, borenet
CC:
reviews_skia.org
Base URL:
https://skia.googlesource.com/buildbot@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Add build scheduler DB interface, dumb in-memory impl, cache BUG=skia: Committed: https://skia.googlesource.com/buildbot/+/341012f3e2766c49194fc9427fb519341c75dbbc

Patch Set 1 #

Patch Set 2 : Fix import #

Total comments: 25

Patch Set 3 : Address some comments #

Patch Set 4 : Address more comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+626 lines, -1 line) Patch
A build_scheduler/go/db/cache.go View 1 2 3 1 chunk +146 lines, -0 lines 0 comments Download
A build_scheduler/go/db/cache_test.go View 1 2 3 1 chunk +60 lines, -0 lines 0 comments Download
A build_scheduler/go/db/db.go View 1 2 1 chunk +72 lines, -0 lines 0 comments Download
A build_scheduler/go/db/db_test.go View 1 2 1 chunk +153 lines, -0 lines 0 comments Download
A build_scheduler/go/db/memory.go View 1 2 1 chunk +149 lines, -0 lines 0 comments Download
M go/buildbucket/buildbucket.go View 2 chunks +45 lines, -0 lines 0 comments Download
M go/testutils/testutils.go View 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 12 (4 generated)
borenet
4 years, 4 months ago (2016-08-08 17:47:26 UTC) #2
dogben
https://codereview.chromium.org/2226583003/diff/20001/build_scheduler/go/db/cache.go File build_scheduler/go/db/cache.go (right): https://codereview.chromium.org/2226583003/diff/20001/build_scheduler/go/db/cache.go#newcode17 build_scheduler/go/db/cache.go:17: // GetBuildsForCommits retrieves all builds which first included each ...
4 years, 4 months ago (2016-08-08 19:22:39 UTC) #3
borenet
https://codereview.chromium.org/2226583003/diff/20001/build_scheduler/go/db/cache.go File build_scheduler/go/db/cache.go (right): https://codereview.chromium.org/2226583003/diff/20001/build_scheduler/go/db/cache.go#newcode17 build_scheduler/go/db/cache.go:17: // GetBuildsForCommits retrieves all builds which first included each ...
4 years, 4 months ago (2016-08-08 19:51:18 UTC) #4
dogben
lgtm https://codereview.chromium.org/2226583003/diff/20001/build_scheduler/go/db/cache.go File build_scheduler/go/db/cache.go (right): https://codereview.chromium.org/2226583003/diff/20001/build_scheduler/go/db/cache.go#newcode17 build_scheduler/go/db/cache.go:17: // GetBuildsForCommits retrieves all builds which first included ...
4 years, 4 months ago (2016-08-08 20:16:07 UTC) #5
borenet
https://codereview.chromium.org/2226583003/diff/20001/build_scheduler/go/db/cache.go File build_scheduler/go/db/cache.go (right): https://codereview.chromium.org/2226583003/diff/20001/build_scheduler/go/db/cache.go#newcode17 build_scheduler/go/db/cache.go:17: // GetBuildsForCommits retrieves all builds which first included each ...
4 years, 4 months ago (2016-08-09 11:22:55 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2226583003/60001
4 years, 4 months ago (2016-08-09 11:37:07 UTC) #9
commit-bot: I haz the power
Committed patchset #4 (id:60001) as https://skia.googlesource.com/buildbot/+/341012f3e2766c49194fc9427fb519341c75dbbc
4 years, 4 months ago (2016-08-09 11:42:46 UTC) #11
dogben
4 years, 4 months ago (2016-08-09 13:56:06 UTC) #12
Message was sent while issue was closed.
lgtm

https://codereview.chromium.org/2226583003/diff/20001/build_scheduler/go/db/c...
File build_scheduler/go/db/cache.go (right):

https://codereview.chromium.org/2226583003/diff/20001/build_scheduler/go/db/c...
build_scheduler/go/db/cache.go:17: // GetBuildsForCommits retrieves all builds
which first included each of the
On 2016/08/09 11:22:55, borenet wrote:
> On 2016/08/08 20:16:07, Ben Wagner wrote:
> > On 2016/08/08 19:51:17, borenet wrote:
> > > On 2016/08/08 19:22:38, Ben Wagner wrote:
> > > > There are a couple things that I don't understand about the
documentation
> > for
> > > > this method:
> > > >  - Shouldn't/Doesn't this return the most recent build rather than the
> first
> > > > build? Actually, I think BuildCache is agnostic as to time and revision
> > > history
> > > > -- it just finds builds where the blamelist includes the commits passed
> in.
> > > >  - If we run two builds for the same builder at the same commit, is the
> > client
> > > > of BuildCache required to set Commits to the empty list for one of those
> > > builds?
> > > > If not, what does this method return in that case?
> > > 
> > > Historically, newer builds "steal" from the blamelist of previous ones. 
In
> > > other words, if a newer build runs at the same commit as a previous build,
> the
> > > previous build's blamelist becomes empty, and the new build gets all the
> > > commits. That's currently handled by datahopper as it ingests builds, but
in
> > the
> > > new world it'll be handled by the build scheduler.
> > 
> > Is it worthwhile to mention here that we assume the blamelists are
> > non-overlapping?
> 
> Wrote some more doc, hopefully it's clearer now.

Awesome! Thanks!

Powered by Google App Engine
This is Rietveld 408576698