Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 延迟的\u作业守护进程在出现错误时退出_Ruby On Rails_Exception Handling_Daemon_Delayed Job - Fatal编程技术网

Ruby on rails 延迟的\u作业守护进程在出现错误时退出

Ruby on rails 延迟的\u作业守护进程在出现错误时退出,ruby-on-rails,exception-handling,daemon,delayed-job,Ruby On Rails,Exception Handling,Daemon,Delayed Job,我正在使用守护进程spawn gem运行延迟的\u作业守护进程,但是,每当出现数据库锁定错误或任何其他类型的错误时,延迟的\u作业守护进程就会停止/退出。有没有办法挽救守护进程中的这些异常?我想没有代码,没有答案: 根据您的设置,您可以挽救错误: class CrawlJob attr_accessor :site_id def initialize(site_id) self.site_id = site_id end def perform begin

我正在使用守护进程spawn gem运行延迟的\u作业守护进程,但是,每当出现数据库锁定错误或任何其他类型的错误时,延迟的\u作业守护进程就会停止/退出。有没有办法挽救守护进程中的这些异常?

我想没有代码,没有答案:

根据您的设置,您可以挽救错误:

class CrawlJob

  attr_accessor :site_id

  def initialize(site_id)
    self.site_id = site_id
  end

  def perform
    begin
      Site.find(self.site_id).crawl
    rescue
      # ... handle the error
    end
  end

end

谢谢你。这是我正在运行的后台任务:eposion.delay.fetch_podcast_episodes@podcastEven当我把它放在一个rescue块中时,延迟的\u作业守护进程仍然存在一个数据库锁定错误。你能发布获取\u播客\u片段的代码吗?我想援救程序块必须进入那里,因为这是稍后将执行的代码,可能会失败。非常感谢Wukerplank。我想我通过在fetch_podcast_剧集的初始活动记录查询周围添加另一个rescue块修复了它。