Module: AngryBatch::Handle
Instance Method Summary collapse
Instance Method Details
#job_completed(job) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/angry_batch/handle.rb', line 6 def job_completed(job) record = AngryBatch::Job.find_by(active_job_idx: job.job_id) return if record.blank? record.with_lock do return if record.failed? record.update!(state: 'completed') end record.batch&.check_status_of_jobs rescue ActiveRecord::RecordNotFound nil end |
#job_failed(job, exception = nil) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/angry_batch/handle.rb', line 22 def job_failed(job, exception = nil) record = AngryBatch::Job.find_by(active_job_idx: job.job_id) return if record.blank? record.with_lock do return if record.completed? record.update!(state: 'failed', error_message: exception&.) end record.batch&.check_status_of_jobs rescue ActiveRecord::RecordNotFound nil end |