Lock Reaper
One of the problems with this gem was that sometimes old locks stayed forever and the only way to fix it was to nuke the entire redis database. This feature prevents that by continuously running a cleanup of orphaned locks.
Background
Before version seven it was impossible to get any context around the lock. Only the digest that was used for uniqueness was displayed and no other context was available. Needless to say, a random string isn’t enough information to provide a detailed bug report.
Usage
Lock info can be turned on either for a specific worker or globally
Global configuration
SidekiqUniqueJobs.configure do |config|
config.rep = true
end
Worker configurtaion
class WorkerWithLockInfo
include Sidkekiq::Worker
sidekiq_options lock: :until_executed, lock_info: true
end