qanknku
qanknku

Reputation: 147

Rails using ActiveJob/Sidekiq does not initiate job

While using ActiveJob with sidekiq,

# application.rb
config.active_job.queue_adapter = :sidekiq

I made a job using redis.

class SubmissionJob < ActiveJob::Base
  queue_as :default

  def perform(*args)

While checking through the log, after calling job as

SubmissionJob_perform_later args

But this doesn't work after giving message when doing rails s

Enqueued SubmissionJob (Job ID: 63320b9d-de2a-4791-99f6-e58f2adf73d7) to Sidekiq(development_default) with arguments: ["12345", "12346"]

when at last, I render the result calling with job_id from redis, the result supposed to be return the arguments, but it only returns empty array, and it seems SubmissionJob never runned.

However, when I call with perform_now , SubmissionJob.perform_now args the function works properly so it seems the method SubmissionJob itself is not the problem.

Where should I start to find problem and what is the possible solution to solve this.

Upvotes: 2

Views: 517

Answers (1)

qanknku
qanknku

Reputation: 147

Solved problem.

This was due to Work did not successfully dequeued job from suggested queue. When running the sidekiq, I gave -q option.

For example bundle exec sidekiq -e develop -q develop_submit_job_queue

Upvotes: 1

Related Questions