2012-09-11 1 views
3

mod_wsgi를 사용하여 Apache에서 Django 프로젝트를 설정했습니다. 이제 정기적 인 작업과 예약 된 작업을 실행하기 위해 django-celery를 추가하려고합니다. 가끔 오류 메시지가 나오지만, 그 의미에 대한 설명을 찾지 못했습니다.CeleryBeat 시작시 장고 셀러리 오류 - 데이터베이스에 항목을 추가 할 수 없음

내가 사용 Celerybeat을 시작할 때 : 그 celerybeat을 볼 수 있습니다

Message Error: cannot add item to database 

celerybeat raised exception <class 'dbm.error'>: error('cannot add item to database',) 

프로젝트 디렉토리에 두 개의 파일을 생성합니다 :

./manage.py celery beat 

나는 종종 다음과 같은 두 가지 오류 중 하나를 얻을 수 celerybeat-을 schedule.dir 및 celerybeat-schedule.pag. 나는이 파일들이 오류 메시지에 언급 된 "데이터베이스"라고 확신한다. 이러한 파일을 삭제하면 Celerybeat는 보통 두 번 이상 문제없이 실행되지만 오류가 다시 발생합니다.

이 오류를 피하기 위해 celerybeat-schedule 파일과 관련이있는 항목이 있습니까? 권한 문제 일 수 있다고 생각했지만 문제는 볼 수 없습니다.

답변

0

동일한 문제가있어 알아낼 수 없었습니다.

해결 방법은 일정을 저장하는 데이터베이스를 사용하는 것입니다 :이 경로를 이동하는 경우 당신은 당신의 데이터베이스를 pip install django-celery 필요하고 업데이트 할 수 있습니다

celery -A proj beat -S djcelery.schedulers.DatabaseScheduler

.

0

python3-gdbm (또는 python3-dbm) 패키지를 설치하고 일정 파일을 다시 작성하여이 문제를 해결할 수있었습니다.