В последнее время я получаю массу неинициализированных постоянных ошибок, и я не могу понять почему. Ниже приведен конкретный пример c. В этом примере я вызываю задание из рабочего места. Но я получаю такую же неинициализированную постоянную ошибку, что и во многих других моих работах. Все вакансии находятся в приложении / вакансиях. Я что-то упускаю? Sidekiq до недавнего времени работал нормально.
Я очистил свой кеш Heroku и убил все попытки в Sidekiq, но эти проблемы все еще возникают. Здесь есть что-то действительно странное. Из-за другой ошибки, которую я получаю в связи с заданием sidekiq, я получаю «неправильное количество аргументов (дано 2, ожидается 1)». Я обновил рассматриваемую функцию, чтобы получать две недели аргументов go. Возможно ли, что Sidekiq каким-то образом застрял в кэшированной версии базы кода?
Ruby версия: ruby 2.5.3p105 Версия Sidekiq: 6.0.7
app / jobs / process_email_notifications_job .rb
class ProcessEmailNotificationsJob < ApplicationJob
queue_as :default
def perform
user_ids = UserNotification.where(is_read: false).pluck(:user_id).uniq
user_ids.each do |user_id|
ProcessIndividualEmailNotificationsJob.perform_later user_id
end
end
end
app / jobs / process_individual_email_notifications_job.rb
class ProcessIndividualEmailNotificationsJob < ApplicationJob
queue_as :default
def perform(user_id)
...
end
end
Сообщение об ошибке:
2020-05-06T20:07:45.720Z pid=56028 tid=owp0sdcm8 DEBUG: enqueued retry: {"retry":true,"queue":"production_default","class":"ActiveJob::QueueAdapters::SidekiqAdapter::JobWrapper","wrapped":"ProcessIndividualEmailNotificationsJob","args":[{"job_class":"ProcessIndividualEmailNotificationsJob","job_id":"4b31bc4f-d034-4190-b24f-d0464cf81df0","provider_job_id":null,"queue_name":"production_default","priority":null,"arguments":[988],"executions":0,"locale":"en"}],"jid":"0ecc861f5870a7b9a70f176f","creat
4:07:45 PM sidekiq.1 | > ed_at":1588794273.2726498,"enqueued_at":1588795006.4009435,"error_message":"uninitialized constant ProcessIndividualEmailNotificationsJob\nDid you mean? ProcessEmailNotificationsJob","error_class":"NameError","failed_at":1588794279.9911764,"retry_count":5,"retried_at":1588795006.763224}
Инициализатор:
require 'sidekiq'
require 'sidekiq/web'
Sidekiq.configure_client do |config|
config.redis = { :size => 5 }
end
Sidekiq.configure_server do |config|
config.redis = { :size => 25 }
end
Sidekiq::Web.set :sessions, false
sidekiq.yml
:concurrency: 18
development:
:verbose: true
:queues:
- [development_priority, 2]
- development_default
- development_mailers
staging:
:queues:
- [staging_priority, 2]
- staging_default
- staging_mailers
production:
:queues:
- [production_priority, 2]
- production_default
- production_mailers