recently I have upgraded rails from 5.2 to 7.x and ruby 2.6 to 2.7.x and encouthering an issue with sidekiq job execution.
Getting ActiveSupport::Duration
as an error message for any perform_later
I tried various ways to fix the issue but was struck to figure out the exact area of the failure. It perfectly works with Rails 7.x and ruby 2.7 with sidekiq 6.x version and fails only on the sidekiq 7.x version, so it seems like any API modification but failing to figure it.
Version details
Rails 7.0.4.2
ruby 2.7.7
Redis 5.0.6
sidekiq 7.0.6
3
Answers
This is fixed on main, see issue 5806.
@mike-perham here is a simple example, it looks like it is related to the sidekiq status gem:
I had this same issue and for me, it turned out to be a breaking change that I wasn’t handling. I had
The first line was the object that was of type ActiveSupport::Duration. Changing that line to be an integer instead made the error disappear.