From 7b7fc91eb4561fd5fb1b87a51ff35bab75065197 Mon Sep 17 00:00:00 2001 From: Kyle Drake Date: Sat, 20 Feb 2016 19:08:13 -0800 Subject: [PATCH] Dedupe scheduled archive jobs as well as queued jobs --- workers/archive_worker.rb | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/workers/archive_worker.rb b/workers/archive_worker.rb index 4d29e515..e69e6cca 100644 --- a/workers/archive_worker.rb +++ b/workers/archive_worker.rb @@ -18,11 +18,21 @@ class ArchiveWorker logger.info "JOB ID: #{jid} #{site_id.inspect}" queue.each do |job| if job.args == [site_id] && job.jid != jid - logger.info "DELETING #{job.jid} #{job.args.inspect}" + logger.info "DELETING #{job.jid} for site_id #{site_id}" job.delete end end + scheduled_jobs = Sidekiq::ScheduledSet.new.select do |scheduled_job| + scheduled_job.klass == 'ArchiveWorker' && + scheduled_job.args[0] == site_id + end + + scheduled_jobs.each do |scheduled_job| + logger.info "DELETING scheduled job #{scheduled_job.jid} for site_id #{site_id}" + scheduled_job.delete + end + site.archive! end end