Files
gerrit/proto
Patrick Hiesel c2c108c7a4 Persist ProjectCache
This commit splits the 'projects' cache into two pieces:
1) The 'projects' cache: This cache continues to work as
   it did before. It offers a by-name caching without the
   need to present or load the ObjectId of
   refs/meta/config.
2) The 'persisted_projects' cache: This cache is the
   persisted variant of 'projects'. It's used in the loader
   for 'projects' and - as all persisted caches - has the
   ObjectId in the key.

This new setup allows admins to persist the project cache -
if desired - to ease cold start times. This is an additional
performance improvement next to ProjectCacheWarmer. It might
at some point replace ProjectCacheWarmer. For now, the two
co-exist.

The split is done in this way to make sure we can still
access projects in the cache without loading a SHA1 for each
lookup as that would be prohibitively slow given the amount
of requests this cache serves.

Change-Id: I174076acd90ae815ac66e1e0f8a72db0701bf2d3
2020-08-11 14:51:49 +02:00
..
2019-09-11 08:17:14 +09:00
2020-08-11 14:51:49 +02:00