Permalink
Browse files

handled issue of worker process being killed while creating handler a…

…nd loading yaml for it
  • Loading branch information...
1 parent 719b628 commit ea929cb87b3464800629e1279859f81033bf4e30 @anilg committed Oct 11, 2011
Showing with 3 additions and 3 deletions.
  1. +3 −3 lib/delayed/job.rb
View
6 lib/delayed/job.rb
@@ -214,7 +214,7 @@ def self.work_off(num = 100)
# Moved into its own method so that new_relic can trace it.
def invoke_job
- payload_object.perform
+ payload_object.perform if payload_object
end
private
@@ -227,13 +227,13 @@ def deserialize(source)
handler_class = $1
end
attempt_to_load(handler_class || handler.class)
- handler = YAML.load(source)
+ handler = YAML.load(source) rescue nil
end
return handler if handler.respond_to?(:perform)
raise DeserializationError,
- 'Job failed to load: Unknown handler. Try to manually require the appropiate file.'
+ 'Job failed to load: Unknown handler. Try to manually require the appropiate file.' if handler
rescue TypeError, LoadError, NameError => e
raise DeserializationError,
"Job failed to load: #{e.message}. Try to manually require the required file."

0 comments on commit ea929cb

Please sign in to comment.