Skip to content

Commit c51a9b1

Browse files
committed
Use string range notation for backwards compatibility with Good job
1 parent 3f523ae commit c51a9b1

File tree

2 files changed

+18
-27
lines changed

2 files changed

+18
-27
lines changed

lib/hirefire/macro/delayed_job.rb

Lines changed: 16 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -27,20 +27,15 @@ class MapperNotDetectedError < StandardError; end
2727
# HireFire::Macro::Delayed::Job.job_queue_latency(:default, :mailer)
2828
def job_queue_latency(*queues)
2929
queues = normalize_queues(queues, allow_empty: true)
30+
query = ::Delayed::Job.where(failed_at: nil).order(run_at: :asc)
3031

31-
query =
32-
::Delayed::Job
33-
.where("run_at <= ?", Time.now)
34-
.where(failed_at: nil)
35-
.order(run_at: :asc)
36-
37-
if queues.any?
38-
case mapper
39-
when :active_record
40-
query = query.where(queue: queues)
41-
when :mongoid
42-
query = query.in(queue: queues.to_a)
43-
end
32+
case mapper
33+
when :active_record
34+
query = query.where("run_at <= ?", Time.now)
35+
query = query.where(queue: queues) if queues.any?
36+
when :mongoid
37+
query = query.where(run_at: {"$lte" => Time.now})
38+
query = query.in(queue: queues.to_a) if queues.any?
4439
end
4540

4641
if (job = query.first)
@@ -65,19 +60,15 @@ def job_queue_latency(*queues)
6560
# HireFire::Macro::Delayed::Job.job_queue_size(:default, :mailer)
6661
def job_queue_size(*queues)
6762
queues = normalize_queues(queues, allow_empty: true)
63+
query = ::Delayed::Job.where(failed_at: nil)
6864

69-
query =
70-
::Delayed::Job
71-
.where("run_at <= ?", Time.now)
72-
.where(failed_at: nil)
73-
74-
if queues.any?
75-
case mapper
76-
when :active_record
77-
query = query.where(queue: queues)
78-
when :mongoid
79-
query = query.in(queue: queues.to_a)
80-
end
65+
case mapper
66+
when :active_record
67+
query = query.where("run_at <= ?", Time.now)
68+
query = query.where(queue: queues) if queues.any?
69+
when :mongoid
70+
query = query.where(run_at: {"$lte" => Time.now})
71+
query = query.in(queue: queues.to_a) if queues.any?
8172
end
8273

8374
query.count

lib/hirefire/macro/good_job.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ def job_queue_latency(*queues)
2929
query = query.where(queue_name: queues) if queues.any?
3030
query = query.where(performed_at: nil)
3131
query = query.where.not(error_event: discarded_enum).or(query.where(error_event: nil)) if error_event_supported?
32-
query = query.where(scheduled_at: ..Time.now).or(query.where(scheduled_at: nil))
32+
query = query.where("scheduled_at <= ?", Time.now).or(query.where(scheduled_at: nil))
3333
query = query.order(scheduled_at: :asc, created_at: :asc)
3434

3535
if (job = query.first)
@@ -57,7 +57,7 @@ def job_queue_size(*queues)
5757
query = query.where(queue_name: queues) if queues.any?
5858
query = query.where(performed_at: nil)
5959
query = query.where.not(error_event: discarded_enum).or(query.where(error_event: nil)) if error_event_supported?
60-
query = query.where(scheduled_at: ..Time.now).or(query.where(scheduled_at: nil))
60+
query = query.where("scheduled_at <= ?", Time.now).or(query.where(scheduled_at: nil))
6161
query.count
6262
end
6363
end

0 commit comments

Comments
 (0)