2

以前有人在 celery(Python 中的分布式任务工作者)中看到过这个错误吗?

回溯(最后一次调用):文件“/home/mcapp/.virtualenv/lister/local/lib/python2.7/site-packages/celery/task/trace.py”,第 228 行,在 trace_task R = retval = fun(*args, **kwargs) 文件“/home/mcapp/.virtualenv/lister/local/lib/python2.7/site-packages/celery/task/trace.py”,第 415 行,在protected_call中 返回 self。运行(*args,**kwargs)文件“/home/mcapp/lister/lister/tasks/ init .py”,第 69 行,在 update_playlist_db video_update(videos) 文件“/home/mcapp/lister/lister/tasks/ init .py",第 55 行,在 video_update 和弦(tasks)(update_complete.s(update_id=update_id, update_type='db', complete=True)) 文件“/home/mcapp/.virtualenv/lister/local/lib/python2 .7/site-packages/celery/canvas.py”,第 464 行,通话中 _chord = self.type 文件“/home/mcapp/.virtualenv/lister/local/lib/python2.7/site-packages/celery/canvas.py”,第 461 行,类型为 return self._type 或 self.tasks[ 0].type.app.tasks['celery.chord'] IndexError: 列表索引超出范围

这个特定版本的 celery 是 3.0.19,并且在使用 celery chord 功能时发生。我们认为我们的应用程序没有任何错误,因为 99% 的时间我们的代码都可以正常工作,但是在较重的负载下会发生此错误。我们正在尝试找出这是我们应用程序中的实际错误还是 celery 错误,任何帮助将不胜感激。

4

1 回答 1

1

这是当和弦标题中没有任务时发生的错误。Celery 尝试访问标头中的任务,self.tasks[0]这会导致索引错误,因为列表中没有任务。

于 2013-09-21T23:00:01.323 回答