lib/sidekiq/throttled/middleware.rb in sidekiq-throttled-1.0.0.alpha.1 vs lib/sidekiq/throttled/middleware.rb in sidekiq-throttled-1.0.0

- old
+ new

@@ -7,17 +7,22 @@ module Throttled # Server middleware that notifies strategy that job was finished. # # @private class Middleware - include Sidekiq::ServerMiddleware if Sidekiq::VERSION >= "6.5.0" + include Sidekiq::ServerMiddleware # Called within Sidekiq job processing def call(_worker, msg, _queue) yield ensure - Registry.get msg["class"] do |strategy| - strategy.finalize!(msg["jid"], *msg["args"]) + job = msg.fetch("wrapped") { msg["class"] } + jid = msg["jid"] + + if job && jid + Registry.get job do |strategy| + strategy.finalize!(jid, *msg["args"]) + end end end end end end