1
sidekiq을 사용하여 백그라운드 작업을 처리하고 있는데 sidekiq을 처음 사용하는 것은 아닙니다.관리자 모델을 가지고있을 때 Sidekiq이 시작되지 않습니다.
문제 : 나는 유증 모델 이름 관리자가있는 경우
Sidekiq이 시작되지 않습니다.
class Admin < ActiveRecord::Base
# Include default devise modules. Others available are:
# :confirmable, :lockable, :registerable, :timeoutable and :omniauthable
devise :database_authenticatable, :recoverable, :rememberable, :trackable, :validatable
end
이 "admin"모델 클래스에 대한 의견을 제시하면 sidekiq는 정상적으로 작동합니다. 지금은 sidekiq 기본 구성을 사용하고 있습니다.
오류 역 추적 :
bundle exec sidekiq
Admin is not a class
/home/ninja/workspace/howismyschool/app/models/admin.rb:1:in `<top (required)>'
/home/ninja/.rvm/gems/[email protected]/gems/activesupport-4.1.4/lib/active_support/dependencies.rb:443:in `load'
/home/ninja/.rvm/gems/[email protected]/gems/activesupport-4.1.4/lib/active_support/dependencies.rb:443:in `block in load_file'
/home/ninja/.rvm/gems/[email protected]/gems/activesupport-4.1.4/lib/active_support/dependencies.rb:633:in `new_constants_in'
/home/ninja/.rvm/gems/[email protected]/gems/activesupport-4.1.4/lib/active_support/dependencies.rb:442:in `load_file'
/home/ninja/.rvm/gems/[email protected]/gems/activesupport-4.1.4/lib/active_support/dependencies.rb:342:in `require_or_load'
/home/ninja/.rvm/gems/[email protected]/gems/activesupport-4.1.4/lib/active_support/dependencies.rb:307:in `depend_on'
/home/ninja/.rvm/gems/[email protected]/gems/activesupport-4.1.4/lib/active_support/dependencies.rb:225:in `require_dependency'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/engine.rb:468:in `block (2 levels) in eager_load!'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/engine.rb:467:in `each'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/engine.rb:467:in `block in eager_load!'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/engine.rb:465:in `each'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/engine.rb:465:in `eager_load!'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/engine.rb:346:in `eager_load!'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/application/finisher.rb:58:in `each'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/application/finisher.rb:58:in `block in <module:Finisher>'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/initializable.rb:30:in `instance_exec'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/initializable.rb:30:in `run'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/initializable.rb:55:in `block in run_initializers'
/home/ninja/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:226:in `block in tsort_each'
/home/ninja/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:348:in `block (2 levels) in each_strongly_connected_component'
/home/ninja/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:427:in `each_strongly_connected_component_from'
/home/ninja/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:347:in `block in each_strongly_connected_component'
/home/ninja/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:345:in `each'
/home/ninja/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:345:in `call'
/home/ninja/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:345:in `each_strongly_connected_component'
/home/ninja/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:224:in `tsort_each'
/home/ninja/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:205:in `tsort_each'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/initializable.rb:54:in `run_initializers'
/home/ninja/.rvm/gems/[email protected]/gems/railties-4.1.4/lib/rails/application.rb:300:in `initialize!'
/home/ninja/workspace/howismyschool/config/environment.rb:5:in `<top (required)>'
/home/ninja/.rvm/gems/[email protected]/gems/activesupport-4.1.4/lib/active_support/dependencies.rb:247:in `require'
/home/ninja/.rvm/gems/[email protected]/gems/activesupport-4.1.4/lib/active_support/dependencies.rb:247:in `block in require'
/home/ninja/.rvm/gems/[email protected]/gems/activesupport-4.1.4/lib/active_support/dependencies.rb:232:in `load_dependency'
/home/ninja/.rvm/gems/[email protected]/gems/activesupport-4.1.4/lib/active_support/dependencies.rb:247:in `require'
/home/ninja/.rvm/gems/[email protected]/gems/sidekiq-3.2.0/lib/sidekiq/cli.rb:230:in `boot_system'
/home/ninja/.rvm/gems/[email protected]/gems/sidekiq-3.2.0/lib/sidekiq/cli.rb:49:in `run'
/home/ninja/.rvm/gems/[email protected]/gems/sidekiq-3.2.0/bin/sidekiq:8:in `<top (required)>'
/home/ninja/.rvm/gems/[email protected]/bin/sidekiq:23:in `load'
/home/ninja/.rvm/gems/[email protected]/bin/sidekiq:23:in `<main>'
/home/ninja/.rvm/gems/[email protected]/bin/ruby_executable_hooks:15:in `eval'
/home/ninja/.rvm/gems/[email protected]/bin/ruby_executable_hooks:15:in `<main>'
응용 프로그램 환경 :
- 루비 2.1.2
- 레일 4.1.4
- 우분투 14.04
예,이 문제가 될 수 있습니다. 내 응용 프로그램에 설치된 activeadmin 가지고 있고 아마도이 이유가 될 것으로 보인다. activeadmin을 애플리케이션에서 완전히 주석 처리하면 sidekiq가 정상적으로 시작됩니다. 나는이 Admin 상수가 정의되었지만 찾을 수없는 곳을 찾기 위해 activeadmin 젬을 조사하고있었습니다. 문제는이 관리자 이름 충돌입니다. 그러나 어디에서 찾을 수 없습니다. 지금은 내 관리 클래스의 이름을 바꿀 것입니다. –