diff options
Diffstat (limited to 'lib/gitlab/sidekiq_middleware/duplicate_jobs.rb')
-rw-r--r-- | lib/gitlab/sidekiq_middleware/duplicate_jobs.rb | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/lib/gitlab/sidekiq_middleware/duplicate_jobs.rb b/lib/gitlab/sidekiq_middleware/duplicate_jobs.rb index 23222430902..f0e26f99c2c 100644 --- a/lib/gitlab/sidekiq_middleware/duplicate_jobs.rb +++ b/lib/gitlab/sidekiq_middleware/duplicate_jobs.rb @@ -5,8 +5,18 @@ require 'digest' module Gitlab module SidekiqMiddleware module DuplicateJobs - def self.drop_duplicates? - Feature.enabled?(:drop_duplicate_sidekiq_jobs) + DROPPABLE_QUEUES = Set.new([ + Namespaces::RootStatisticsWorker.queue + ]).freeze + + def self.drop_duplicates?(queue_name) + Feature.enabled?(:drop_duplicate_sidekiq_jobs) || + drop_duplicates_for_queue?(queue_name) + end + + private_class_method def self.drop_duplicates_for_queue?(queue_name) + DROPPABLE_QUEUES.include?(queue_name) && + Feature.enabled?(:drop_duplicate_sidekiq_jobs_for_queue) end end end |