class Lowkiq::Queue::Actions
Public Class Methods
new(queue, queries)
click to toggle source
# File lib/lowkiq/queue/actions.rb, line 4 def initialize(queue, queries) @queue = queue @queries = queries @pool = queue.pool @keys = Keys.new queue.name end
Public Instance Methods
delete_all_failed_jobs()
click to toggle source
# 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()
click to toggle source
# 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()
click to toggle source
# 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)
click to toggle source
# 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()
click to toggle source
# 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()
click to toggle source
# 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