Skip to content

Commit

Permalink
Merge pull request #1 from ferocia/arg-indexes
Browse files Browse the repository at this point in the history
Improve QueJob#by_job_class performance.
  • Loading branch information
benhoskings authored Apr 15, 2020
2 parents ae4f0fb + d57305e commit 14e6199
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions lib/que/active_record/model.rb
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,10 @@ class Model < ::ActiveRecord::Base
class << self
def by_job_class(job_class)
job_class = job_class.name if job_class.is_a?(Class)
job_class_doc = "[{\"job_class\": \"#{job_class}\"}]"
where(
"que_jobs.job_class = ? OR (que_jobs.job_class = 'ActiveJob::QueueAdapters::QueAdapter::JobWrapper' AND que_jobs.args->0->>'job_class' = ?)",
job_class, job_class,
"que_jobs.job_class = ? OR (que_jobs.job_class = 'ActiveJob::QueueAdapters::QueAdapter::JobWrapper' AND que_jobs.args @> ?)",
job_class, job_class_doc,
)
end

Expand Down

0 comments on commit 14e6199

Please sign in to comment.