首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在windows上运行django-celery。EOFError

在windows上运行django-celery。EOFError
EN

Stack Overflow用户
提问于 2013-03-10 09:18:42
回答 1查看 594关注 0票数 1

我使用的是64位的Windows7。我安装了最新版本的台球、django-celery和kombu。我包括:

代码语言:javascript
复制
import djcelery
djcelery.setup_loader()

添加到我的项目setting.py

当我从项目的根目录运行以下命令时:

代码语言:javascript
复制
python manage.py celeryd -l info

我收到以下消息(这是消息的最后一部分):

代码语言:javascript
复制
File "c:\python27\lib\pickle.py", line 562, in save_tuple
    save(element)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 548, in save_tuple
    save(element)
  File "c:\python27\lib\pickle.py", line 306, in save
    rv = reduce(self.proto)
  File "c:\python27\lib\site-packages\celery\app\base.py", line 412, in __reduce__
    (self.__class__, self.Pickler) + self.__reduce_args__(),
  File "c:\python27\lib\site-packages\celery\app\base.py", line 422, in __reduce_args__
    else self.conf._pickleable_changes())
  File "c:\python27\lib\site-packages\celery\app\utils.py", line 77, in _pickleable_changes
    R.update(d)
TypeError: 'LazySettings' object is not iterable

C:\sources\tourtle>Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "c:\python27\lib\site-packages\billiard\forking.py", line 530, in main
    self = load(from_parent)
  File "c:\python27\lib\pickle.py", line 1378, in load
    return Unpickler(file).load()
  File "c:\python27\lib\pickle.py", line 858, in load
    dispatch[key](self)
  File "c:\python27\lib\pickle.py", line 880, in load_eof
    raise EOFError
EOFError

我安装了MinGW并将distutils.cfg添加到c:\MinGW\bin,但没有帮助

谢谢

EN

回答 1

Stack Overflow用户

发布于 2013-03-11 15:50:55

在github上查看此讨论:

https://github.com/celery/django-celery/issues/228

一种解决方法是以asksol建议的方式更改celery/app/base.py (第418-419行):

发自:

代码语言:javascript
复制
conf = (self.conf.changes if _forking._forking_is_enabled
        else self.conf._pickleable_changes())'

至:

代码语言:javascript
复制
conf = (self.conf.changes if _forking._forking_is_enabled
        else {})

然后它应该工作得很好。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15317850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档