module Resque::DynamicQueues
def reserve_with_round_robin
def reserve_with_round_robin qs = rotated_queues qs.each do |queue| log! "Checking #{queue}" if should_work_on_queue?(queue) && @job_in_progress = Resque::Job.reserve(queue) log! "Found job on #{queue}" return @job_in_progress end # Start the next search at the queue after the one from which we pick a job. @n += 1 end nil rescue Exception => e log "Error reserving job: #{e.inspect}" log e.backtrace.join("\n") raise e end