I'm not super familiar with Sidekiq, but my project has a config/sidekiq.yml
file with some jobs listed.
I've made changes to this file, as well as commented some jobs out... yet whenever I run bundle exec sidekiq
it seems as though the sidekiq process has no idea that config/sidekiq.yml
had changed.
I'm seeing sidekiq trying to run a job which has since been renamed, and it's also attempting to run a job which I've commented out completely.
It seems bundle exec sidekiq
is oblivious to the changes to config/sidekiq.yml
?
I've rebooted the rails development server, as well as sidekiq, both at the same time, and tried rake tmp:cache:clear
I've also opened up the rails console and entered:
require 'sidekiq/api'
Sidekiq::Queue.all.each(&:clear)
I still seem to have zombie jobs trying to run.
CodePudding user response:
Sidekiq::Queue
does not include your retry queues. You probably have jobs there as well.
Consider using the Sidekiq UI to monitor the state of your queues.
CodePudding user response:
you could try redis-cli FLUSHALL
as for the Sidekiq UI:
# config/routes.rb
require "sidekiq/web"
authenticate :user, ->(user) { user.admin? } do
mount Sidekiq::Web => '/sidekiq'
end
will allow admin users to visit /sidekiq and see the retries that @Schwern was mentioning.
if you dont have an admin boolean yet:
rails g migration AddAdminToUsers
and this inside:
def change
add_column :users, :admin, :boolean, null: false, default: false
end