Geo: Preserve "Repository synchronization concurrency limit"
Problem
At the moment, SSF uses files_max_capacity
to limit the number of concurrent replication jobs across all replicators.
Including Group wiki repos and Snippet repos.
Soon, Project repos and Project wiki repos will be migrated to use SSF code.
We should use the existing repos_max_capacity
setting to manage repos separately from blobs.
Proposal 1
Before projects and wikis are migrated to SSF:
- Duplicate
Geo::RegistrySyncWorker
toGeo::RegistryRepositorySyncWorker
- In
Geo::RegistryRepositorySyncWorker
, use 1/10 ofrepos_max_capacity
and scopedef replicator_classes
to include only repository types - In
Geo::RegistrySyncWorker
, scopedef replicator_classes
to include only blob types - Add issue to &4623 (closed) to remember to do the next step "During the migration of projects and wikis" below.
During the migration of projects and wikis:
- In
Geo::RegistryRepositorySyncWorker
, use the fullrepos_max_capacity
in#max_capacity
when the project and wikis SSF replication feature flag is enabled
Proposal 2 (Less ideal)
During the migration of projects and wikis:
- In
Geo::RegistrySyncWorker
, use the fullrepos_max_capacity
in#max_capacity
when the project and wikis SSF replication feature flag is enabled - Open a follow up issue to respect repo and file concurrency limits properly rather than bunched into one
Edited by Michael Kozono