Skip to content

Commit f5f0741

Browse files
authored
Merge pull request #5 from intellum/sj/LEA-5114-fixing-incorrect-queue-issue
[LEA-5114] Fixing the issue with using incorrect queue
2 parents d1b4a4d + f69e316 commit f5f0741

File tree

5 files changed

+7
-7
lines changed

5 files changed

+7
-7
lines changed

lib/delayed_after_commit.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ def delayed_after_commit(*args, &block)
3131
method = args.first
3232
delayed_method_name = "delayed_after_#{opts[:on]}_#{method}"
3333
define_method(delayed_method_name) do |m = method|
34-
Worker.perform_async(self.class.name, m.to_s, id.to_s, retry_max.to_i, 0, queue.to_s)
34+
Worker.set(queue:).perform_async(self.class.name, m.to_s, id.to_s, retry_max.to_i, 0, queue.to_s)
3535
end
3636
after_commit(delayed_method_name.to_sym, opts, &block)
3737
end
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# frozen_string_literal: true
22

33
module DelayedAfterCommit
4-
VERSION = "0.1.8"
4+
VERSION = "0.1.9"
55
end

lib/delayed_after_commit/worker.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ def perform(class_name, method, id, retry_max = nil, retry_count = 0, queue = 'd
1414
obj.send(method) if obj.present?
1515
rescue StandardError => e
1616
if retry_max.present? && retry_count < retry_max
17-
self.class.perform_in(retry_count.minutes, class_name, method, id, retry_max, retry_count + 1, queue.to_s)
17+
self.class.set(queue:).perform_in(retry_count.minutes, class_name, method, id, retry_max, retry_count + 1, queue.to_s)
1818
end
1919
raise e
2020
end

spec/lib/delayed_after_commit_spec.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@
5050
Sidekiq::Testing.fake! do
5151
expect do
5252
User.create!(name: 'Alice')
53-
end.to change(Sidekiq::Queues['default'], :size).by(1)
54-
expect(Sidekiq::Queues['default'].last["args"]).to include("calculate_number_of_letters_in_name")
53+
end.to change(Sidekiq::Queues['high'], :size).by(1)
54+
expect(Sidekiq::Queues['high'].last["args"]).to include("calculate_number_of_letters_in_name")
5555
end
5656
end
5757
end
@@ -67,7 +67,7 @@
6767

6868
job = Sidekiq::Queues["default"].last
6969
expect(job["retry"]).to be(false) # We are not using sidekiq's retry feature
70-
expect(job["args"]).to eq(["User", "failing_callback", bob.id.to_s, 3])
70+
expect(job["args"]).to eq(["User", "failing_callback", bob.id.to_s, 3, 0, "default"])
7171
end
7272
end
7373

spec/spec_helper.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ class User < ActiveRecord::Base
2626
attr_accessor :increment_enabled, :fail_enabled
2727

2828
delayed_after_update :increment_number_of_updates, if: :increment_enabled
29-
delayed_after_create :calculate_number_of_letters_in_name
29+
delayed_after_create :calculate_number_of_letters_in_name, queue: 'high'
3030

3131
delayed_after_update :failing_callback, if: :fail_enabled, retry_max: 3
3232

0 commit comments

Comments
 (0)