Class: Lowkiq::Queue::Actions
- Inherits:
-
Object
- Object
- Lowkiq::Queue::Actions
- Defined in:
- lib/lowkiq/queue/actions.rb
Instance Method Summary collapse
- #delete_all_failed_jobs ⇒ Object
-
#initialize(queue, queries) ⇒ Actions
constructor
A new instance of Actions.
- #kill_all_failed_jobs ⇒ Object
- #morgue_delete_all_jobs ⇒ Object
- #morgue_queue_up(ids) ⇒ Object
- #morgue_queue_up_all_jobs ⇒ Object
- #perform_all_jobs_now ⇒ Object
Constructor Details
Instance Method Details
#delete_all_failed_jobs ⇒ Object
32 33 34 35 36 37 |
# File 'lib/lowkiq/queue/actions.rb', line 32 def delete_all_failed_jobs until (jobs = @queries.range_by_retry_count('0', '+inf', limit: 100); jobs.empty?) ids = jobs.map { |j| j[:id] } @queue.delete ids end end |
#kill_all_failed_jobs ⇒ Object
24 25 26 27 28 29 30 |
# File 'lib/lowkiq/queue/actions.rb', line 24 def kill_all_failed_jobs until (jobs = @queries.range_by_retry_count('0', '+inf', limit: 100); jobs.empty?) @queue.push_to_morgue jobs ids = jobs.map { |j| j[:id] } @queue.delete ids end end |
#morgue_delete_all_jobs ⇒ Object
55 56 57 58 59 60 |
# File 'lib/lowkiq/queue/actions.rb', line 55 def morgue_delete_all_jobs until (jobs = @queries.morgue_range_by_id('-', '+', limit: 100); jobs.empty?) ids = jobs.map { |j| j[:id] } @queue.morgue_delete ids end end |
#morgue_queue_up(ids) ⇒ Object
39 40 41 42 43 44 45 |
# File 'lib/lowkiq/queue/actions.rb', line 39 def morgue_queue_up(ids) jobs = @queries.morgue_fetch ids return if jobs.empty? @queue.push_back jobs @queue.morgue_delete ids end |
#morgue_queue_up_all_jobs ⇒ Object
47 48 49 50 51 52 53 |
# File 'lib/lowkiq/queue/actions.rb', line 47 def morgue_queue_up_all_jobs until (jobs = @queries.morgue_range_by_id('-', '+', limit: 100); jobs.empty?) @queue.push_back jobs ids = jobs.map { |j| j[:id] } @queue.morgue_delete ids end end |
#perform_all_jobs_now ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/lowkiq/queue/actions.rb', line 12 def perform_all_jobs_now @pool.with do |redis| uredis = Utils::Redis.new redis redis.multi do uredis.zresetscores @keys.all_ids_scored_by_perform_in_zset @queue.shards.each do |shard| uredis.zresetscores @keys.ids_scored_by_perform_in_zset(shard) end end end end |