Skip to content

Cleanup code post rolling out Sidekiq circuit breaker

Overview

This issue tracks the cleanup work needed after successfully rolling out the Sidekiq circuit breaker feature. Once all related feature flags are fully rolled out, we need to remove them from the codebase and clean up associated documentation.

Prerequisites

All feature flags linked below must be fully rolled out before proceeding with cleanup.

Tasks

Feature Flag Removal (in order)

  1. Remove feature flag from [FF] `sidekiq_concurrency_limit_middleware_v2` ... (gitlab-org/gitlab#565604) - MR gitlab-org/gitlab!211285 (merged)
  2. Remove ConcurrencyLimit::WorkersMap class and its usage. It's no longer used as part of the sidekiq_concurrency_limit_middleware_v2 rollout above. - MR gitlab-org/gitlab!211755
  3. Remove feature flag from [FF] `use_max_concurrency_limit_percentage_as_d... (gitlab-org/gitlab#553604) - MR gitlab-org/gitlab!211775
  4. Remove feature flag from [FF] `concurrency_limit_current_limit_from_redi... (gitlab-org/gitlab#549836) - MR gitlab-org/gitlab!211804
  5. Remove envvar REORDER_DUPLICATE_JOBS_AND_CONCURRENCY_LIMIT_MIDDLEWARE (gitlab-org/gitlab!208142 (diffs)) - MR gitlab-org/gitlab!211908

Configuration cleanup

  • Remove GITLAB_SIDEKIQ_MAX_REPLICAS environment variables defined in k8s-workloads

    GITLAB_SIDEKIQ_MAX_REPLICAS will be kept around in k8s-workloads for now on .com. Once #237 is done, we can remove it in k8s-workloads.

Documentation Cleanup

  • Remove reference to concurrency_limit_current_limit_from_redis feature flag from runbooks

Notes

⚠️ Important: Follow the specified order for feature flag removal to avoid breaking dependencies between flags.

Edited by Marco Gregorius
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information