From 7b0839f27f01f94759cf53754e23b1dc09ddac76 Mon Sep 17 00:00:00 2001 From: Keith Lawrence Date: Wed, 18 Oct 2023 14:43:41 +0100 Subject: [PATCH] Remove brackets, array handling For some reason, it appeared that sidekiq every values in the scheduler were arrays. This is not the case, and also for some reason this doesn't cause problems in any environment apart from production. --- lib/sidekiq_scheduler_backoff_service.rb | 4 ++-- .../sidekiq_scheduler_backoff_service_spec.rb | 18 +++++++++--------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/lib/sidekiq_scheduler_backoff_service.rb b/lib/sidekiq_scheduler_backoff_service.rb index 86c2e76a..6c864743 100644 --- a/lib/sidekiq_scheduler_backoff_service.rb +++ b/lib/sidekiq_scheduler_backoff_service.rb @@ -23,11 +23,11 @@ def record_failure def current_interval schedule = Sidekiq.get_schedule[name] - Integer(schedule["every"].first.chop) + Integer(schedule["every"].chop) end def restart_schedule(target_interval) schedule = Sidekiq.get_schedule[name] - Sidekiq.set_schedule(name, schedule.merge("every" => ["#{target_interval}s"])) + Sidekiq.set_schedule(name, schedule.merge("every" => "#{target_interval}s")) end end diff --git a/spec/lib/sidekiq_scheduler_backoff_service_spec.rb b/spec/lib/sidekiq_scheduler_backoff_service_spec.rb index 41a04a14..fa4a6c3c 100644 --- a/spec/lib/sidekiq_scheduler_backoff_service_spec.rb +++ b/spec/lib/sidekiq_scheduler_backoff_service_spec.rb @@ -14,7 +14,7 @@ it "sets the scheduler to maximum speed and reloads the schedule" do subject.record_failure - expect(scheduled_interval).to eq(["#{min_interval}s"]) + expect(scheduled_interval).to eq("#{min_interval}s") end end @@ -25,7 +25,7 @@ it "halves the scheduler speed and reloads the schedule" do subject.record_failure - expect(scheduled_interval).to eq(["#{max_interval}s"]) + expect(scheduled_interval).to eq("#{max_interval}s") end end @@ -36,7 +36,7 @@ it "does nothing" do subject.record_failure - expect(scheduled_interval).to eq(["#{max_interval}s"]) + expect(scheduled_interval).to eq("#{max_interval}s") end end @@ -47,7 +47,7 @@ it "sets the scheduler to minimum speed and reloads the schedule" do subject.record_failure - expect(scheduled_interval).to eq(["#{max_interval}s"]) + expect(scheduled_interval).to eq("#{max_interval}s") end end end @@ -60,7 +60,7 @@ it "sets the scheduler to maximum speed and reloads the schedule" do subject.record_success - expect(scheduled_interval).to eq(["#{min_interval}s"]) + expect(scheduled_interval).to eq("#{min_interval}s") end end @@ -71,7 +71,7 @@ it "does nothing" do subject.record_success - expect(scheduled_interval).to eq(["#{min_interval}s"]) + expect(scheduled_interval).to eq("#{min_interval}s") end end @@ -82,7 +82,7 @@ it "decremenincrements the scheduler speed by 1 second and reloads the schedule" do subject.record_success - expect(scheduled_interval).to eq(["#{(min_interval * 4) - 1}s"]) + expect(scheduled_interval).to eq("#{(min_interval * 4) - 1}s") end end @@ -93,14 +93,14 @@ it "sets the scheduler to minimum speed and reloads the schedule" do subject.record_success - expect(scheduled_interval).to eq(["#{max_interval}s"]) + expect(scheduled_interval).to eq("#{max_interval}s") end end end end def set_scheduled_interval(interval) - Sidekiq.set_schedule(name.to_s, { "every" => ["#{interval}s"], "class" => "PostcodesCollectionWorker" }) + Sidekiq.set_schedule(name.to_s, { "every" => "#{interval}s", "class" => "PostcodesCollectionWorker" }) end def scheduled_interval