Skip to content

Commit

Permalink
Merge 26f64c8 into e56e606
Browse files Browse the repository at this point in the history
  • Loading branch information
knoxknox committed Nov 12, 2014
2 parents e56e606 + 26f64c8 commit 15e4bbc
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 1 deletion.
5 changes: 5 additions & 0 deletions lib/delayed/backend/base.rb
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,11 @@ def max_attempts
payload_object.max_attempts if payload_object.respond_to?(:max_attempts)
end

def destroy_failed_jobs
payload_object.destroy_failed_jobs if payload_object.respond_to?(:destroy_failed_jobs)
rescue DeserializationError # rubocop:disable HandleExceptions
end

def max_run_time
return unless payload_object.respond_to?(:max_run_time)
return unless (run_time = payload_object.max_run_time)
Expand Down
6 changes: 5 additions & 1 deletion lib/delayed/worker.rb
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ def failed(job)
say "Error when running failure callback: #{error}", 'error'
say error.backtrace.join("\n"), 'error'
ensure
self.class.destroy_failed_jobs ? job.destroy : job.fail!
destroy_failed_jobs(job) ? job.destroy : job.fail!
end
end
end
Expand Down Expand Up @@ -265,6 +265,10 @@ def max_run_time(job)
job.max_run_time || self.class.max_run_time
end

def destroy_failed_jobs(job)
job.destroy_failed_jobs || self.class.destroy_failed_jobs
end

protected

def handle_failed_job(job, error)
Expand Down

0 comments on commit 15e4bbc

Please sign in to comment.