Keep Around Refs Working Group
The keep-around refs working group addresses the problem of unbounded keep around references
Attributes
Scope and Definitions
In the context of this working group:
- keep-around refs: Git references created through Gitaly to ensure certain Git
data does not get pruned by Gitaly.
Exit criteria
- Rails tracks keep-around references it creates as well as the entities that depend on
the Git objects it holds onto.
- Rails removes keep-around references when they are no longer needed by any
entity.
- Rails prevents keep-around references from being created in an unbounded way.
Overarching Goals
- Git operations are performant even for large repositories with many merge
requests, pipelines, etc.
Future goals
- A retention policy is set for keep around refs.
- Migrate existing and unneeded keep around refs on GitLab.com:
- Dependencies between existing keep-around references and the database
entities are recorded and maintained.
- Existing unneeded keep-around references are removed.
Roles and Responsibilities
Working Group Role |
Person |
Title |
Executive Stakeholder |
Tim Zallmann |
Senior Director, ~“Department::Development” |
Facilitator/DRI |
James Fargher |
Senior Backend Engineer, ~“group::gitaly” |
Product DRI |
Mark Wood |
Product Manager, ~“group::gitaly” |
Member |
Sami Hiltunen |
Staff Backend Engineer, ~“group::gitaly” |
Member |
John Cai |
Engineering Manager, ~“group::gitaly” |
Member |
David Kim |
Senior Backend Engineer, ~“group::code review” |
Member |
Kai Armstrong |
Principal Product Manager, ~“group::code review” |
Member |
Hordur Freyr Yngvason |
Senior Backend Engineer, ~“group::pipeline execution” |
Member |
Vasilii Iakliushin |
Staff Backend Engineer, ~“group::source code” |
Member |
Furkan Ayhan |
Senior Backend Engineer, ~“group::pipeline authoring” |