[RebuildableSetCache] [STEP-1] Add RebuildableSetCache with feature flag switch

What does this MR do and why?

This is the first step toward implementing the ref cache with rebuild queue mechanism.

Creates Gitlab::Repositories::RebuildableSetCache as a copy of Gitlab::RepositorySetCache. This class will be extended with rebuild queue functionality in subsequent commits.

Also adds the ref_cache_with_rebuild_queue feature flag and updates Repository#redis_set_cache to switch between the two implementations based on the feature flag.

Contributes to #586458

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

  • Parent issue: #586458
  • Parent epic: gitlab-org&20516
  • Spike MR: !214418 (closed)

Merge request reports

Loading