python – Celery死于DBPageNotFoundError

前端之家收集整理的这篇文章主要介绍了python – Celery死于DBPageNotFoundError前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有3台机器与芹菜工人和rabbitmq作为经纪人,一名工人正在运行与击败旗,所有这一切都由主管管理,有时芹菜死亡有这样的错误.
错误仅出现在节拍工作人员身上,但当出现时,所有计算机上的工作人员都会死亡.
(celery == 3.1.12,kombu == 3.0.20)
[2014-07-05 08:37:04,297: INFO/MainProcess] Connected to amqp://user:**@192.168.15.106:5672//
[2014-07-05 08:37:04,311: ERROR/Beat] Process Beat
Traceback (most recent call last):
File "/var/projects/env/local/lib/python2.7/site-packages/billiard/process.py",line 292,in _bootstrap
self.run()
File "/var/projects/env/local/lib/python2.7/site-packages/celery/beat.py",line 527,in run
self.service.start(embedded_process=True)
File "/var/projects/env/local/lib/python2.7/site-packages/celery/beat.py",line 453,in start
humanize_seconds(self.scheduler.max_interval))
File "/var/projects/env/local/lib/python2.7/site-packages/kombu/utils/__init__.py",line 322,in __get__
value = obj.__dict__[self.__name__] = self.__get(obj)
File "/var/projects/env/local/lib/python2.7/site-packages/celery/beat.py",line 491,in scheduler
return self.get_scheduler()
File "/var/projects/env/local/lib/python2.7/site-packages/celery/beat.py",line 486,in get_scheduler
lazy=lazy)
File "/var/projects/env/local/lib/python2.7/site-packages/celery/utils/imports.py",line 53,in instantiate
return symbol_by_name(name)(*args,**kwargs)
File "/var/projects/env/local/lib/python2.7/site-packages/celery/beat.py",line 357,in __init__
Scheduler.__init__(self,*args,line 184,in __init__
self.setup_schedule()
File "/var/projects/env/local/lib/python2.7/site-packages/celery/beat.py",line 376,in setup_schedule
self._store['entries']
File "/usr/lib/python2.7/shelve.py",line 121,in __getitem__
f = StringIO(self.dict[key])
File "/usr/lib/python2.7/bsddb/__init__.py",line 270,in __getitem__
return _DeadlockWrap(lambda: self.db[key])  # self.db[key]
File "/usr/lib/python2.7/bsddb/dbutils.py",line 68,in DeadlockWrap
return function(*_args,**_kwargs)
File "/usr/lib/python2.7/bsddb/__init__.py",in <lambda>
return _DeadlockWrap(lambda: self.db[key])  # self.db[key]
DBPageNotFoundError: (-30985,'DB_PAGE_NOTFOUND: Requested page not found')

解决方法

我遇到过这个问题,原因是一个损坏的db文件(通常名为“celerybeat-schedule”).
解决方案是删除现有的db文件并重新启动该进程.

Relavent:bsddb.db.DBPageNotFoundError
https://mail.python.org/pipermail/python-list/2009-October/554552.html

猜你在找的Python相关文章