Skip to content

Remove pack-objects hook's concurrency tracker

hook.ConcurrencyTracker is used for logging the concurrency usage of the pack-objects hook. It maintains a map of counters. Each counter is increased or decreased before and after a pack-objects command runs. Apart from logging, it also exposes some Prometheus metrics. The original purpose of these logs and metrics was to monitor the concurrency segmented by different kinds of actors (user/repository/remote_ip). That information was helpful to pick a strategy for the concurrency limiter. After we picked one and removed the rest, they become redundant.

The limiters expose similar and somewhat richer logs and metrics. They can replace pack-objects concurrency tracker perfectly. Besides, they align with per-RPC limiters and future limiters, if any. This commit removes the pack-objects hook's concurrency tracker and its usages.

Replacement:

Merge request reports