module Delayed::Heartbeat
Constants
- VERSION
Attributes
configuration[R]
Public Class Methods
configure() { |configuration| ... }
click to toggle source
# File lib/delayed/heartbeat.rb, line 17 def configure yield(configuration) if block_given? end
delete_timed_out_workers(timeout_seconds = configuration.heartbeat_timeout_seconds)
click to toggle source
# File lib/delayed/heartbeat.rb, line 28 def delete_timed_out_workers(timeout_seconds = configuration.heartbeat_timeout_seconds) dead_workers = Delayed::Heartbeat::Worker.dead_workers(timeout_seconds) cleanup_workers(dead_workers, mark_attempt_failed: true) end
delete_workers_with_different_version(current_version = configuration.worker_version)
click to toggle source
# File lib/delayed/heartbeat.rb, line 23 def delete_workers_with_different_version(current_version = configuration.worker_version) old_workers = Delayed::Heartbeat::Worker.workers_with_different_version(current_version) cleanup_workers(old_workers, mark_attempt_failed: false) end
Private Class Methods
cleanup_workers(workers, mark_attempt_failed: true)
click to toggle source
# File lib/delayed/heartbeat.rb, line 35 def cleanup_workers(workers, mark_attempt_failed: true) Delayed::Heartbeat::Worker.transaction do worker_job_map = workers.each_with_object(Hash.new) do |worker, result| result[worker] = worker.unlock_jobs(mark_attempt_failed: mark_attempt_failed) end Delayed::Heartbeat::Worker.delete_workers(workers) Delayed::Heartbeat::DeleteWorkerResults.new(worker_job_map) end end