Milo: profile performance of GetAllConsoles |
|||
Issue description
And potentially optimize.
Currently every 'update build' event in buildbucket results in running a datastore query on Console.
However:
* Consoles change very infrequently
* Console definitions are updated in a single place (by UpdateConsoles)
* Console's are scoped to a single project
I'm thinking:
* Have a Consoles(project) root entity with the list of all consoles
* Have a Consoles(project) <- ForBuilder(builder) entity with the list of consoles
for a given builder
* Have UpdateConsoles transactionally update the Consoles and ForConsoles objects
* Do direct Get operations on the relevant entities (no query), and rely on dscache to cache their access in memcache.
,
Sep 24
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue. Sorry for the inconvenience if the bug really should have been left as Available. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Sep 24
Some caching appears to have been added in https://chromium-review.googlesource.com/c/infra/luci/luci-go/+/764382, so marking as available for the other enhancements mentioned. |
|||
►
Sign in to add a comment |
|||
Comment 1 by s...@google.com
, Sep 23 2017