加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – delayed_job在出错时死亡 – 将作业保持在锁定

发布时间:2020-12-17 02:44:06 所属栏目:百科 来源:网络整理
导读:DJ死后,日志文件什么也没说. 运行:./ script / delayed_job状态 给出:找到被杀死进程1143的pid文件(/appPath/tmp/pids/delayed_job.pid),删除. delayed_job:没有运行的实例 奇怪的是,如果我使用:./ script / delayed_job运行它将在前台完美运行!永远不
DJ死后,日志文件什么也没说.

运行:./ script / delayed_job状态

给出:找到被杀死进程1143的pid文件(/appPath/tmp/pids/delayed_job.pid),删除.
delayed_job:没有运行的实例

奇怪的是,如果我使用:./ script / delayed_job运行它将在前台完美运行!永远不会死

尝试了许多版本的delayed_job和mongoid,结果相同.

谁知道如何调试?

使用:

铁轨(3.2.7)

delayed_job_mongoid(2.0.0)

mongoid(3.0.3)

delayed_job(3.0.3)

解决方法

原来,delayed_job正在执行导致分段错误的作业,这会杀死delayed_job守护程序.

在调试之后,事实证明,当在守护程序环境中运行时,Random.rand()将导致可重现的分段错误.这与随机生成器的初始播种和设置有关,显然无法通过daemonize正确处理.

解决方案:Random.new.rand()

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读