Django芹菜随机提升SystemExit

时间:2014-03-18 14:30:27

标签: django celery django-celery

我有一个处理复制大文件(30 GB)的芹菜任务。该函数如下所示:

def copy(self, src, dest):
        self.execute('cp %s %s &' % (src, dest))
        while self.get_file_size(src) != self.get_file_size(dest):
            time.sleep(3)

现在看来芹菜随机出现(有时它会在1分钟后15分钟后发生)使用以下追溯引发SystemExit execption:

Traceback (most recent call last):
 File "/some/path/tasks.py", line 51, in create_vm
   vm.create()
 File "/some/path/models.py", line 115, in create
   self.server.copy(self.template_path, self.vdi_path)
 File "/some/path/models.py", line 451, in copy
   time.sleep(3)
 File "/usr/local/lib/python2.7/dist-packages/billiard/common.py", line 95, in _shutdown_cleanup
   sys.exit(-(256 - signum))
 File "/usr/local/lib/python2.7/dist-packages/billiard/pool.py", line 279, in exit
   return _exit()
SystemExit

芹菜会引起这种异常的原因是什么?

1 个答案:

答案 0 :(得分:1)

芹菜引发SystemExit异常的原因是芹菜重新启动。

来自日志:

Restarting celery worker (./manage.py celeryd)

芹菜重新启动的原因是因为它最初是通过ssh启动的,当ssh用户断开连接时它被杀死了。