ixti/sidekiq-throttled

Use of deprecated Redis pipelined feature.

schwern opened this issue · 2 comments

Pipelining commands on a Redis instance is deprecated and will be removed in Redis 5.0.0.

redis.pipelined do
  redis.get("key")
end

should be replaced by

redis.pipelined do |pipeline|
  pipeline.get("key")
end

(called from /Users/schwern/.rvm/gems/ruby-2.7.4/gems/sidekiq-throttled-0.15.0/lib/sidekiq/throttled/fetch.rb:25:in `block in bulk_requeue'}
2022-02-11T22:52:16.352Z pid=36831 tid=wo3 INFO: Pushed 1 jobs back to Redis

The line in question is Sidekiq.redis { |conn| conn.pipelined { units.each(&:requeue) } }. It's not immediately obvious what is causing the deprecation warning. sidekiq 6.4.1 is supposed to have fixed their own deprecation warnings.

  • sidekiq 6.4.1
  • redis 4.6.0
  • sidekiq-throttled 0.15.0

PR created: #115

ixti commented

Fixed and released as 0.16.0.