Как исправить «Ошибка удаления поврежденного файла расписания« celerybeat-schedule »: ошибка (« Неверное магическое число »,) r» - PullRequest
0 голосов
/ 11 июля 2019

Я могу запустить ритм сельдерея в обычном режиме, используя команду в терминале, но когда я запускаюсь в aws, я получаю следующую ошибку:

[2019-07-10 11:30:35,166: ERROR/MainProcess] Removing corrupted schedule file 'celerybeat-schedule': error('Bad magic number',)
    Traceback (most recent call last):
      File "/opt/python/run/venv/local/lib/python3.6/site-packages/kombu/utils/objects.py", line 42, in __get__
        return obj.__dict__[self.__name__]
    KeyError: 'scheduler'

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "/opt/python/run/venv/local/lib/python3.6/site-packages/celery/beat.py", line 476, in setup_schedule
        self._store = self._open_schedule()
      File "/opt/python/run/venv/local/lib/python3.6/site-packages/celery/beat.py", line 466, in _open_schedule
        return self.persistence.open(self.schedule_filename, writeback=True)
      File "/usr/lib64/python3.6/shelve.py", line 243, in open
        return DbfilenameShelf(filename, flag, protocol, writeback)
      File "/usr/lib64/python3.6/shelve.py", line 227, in __init__
        Shelf.__init__(self, dbm.open(filename, flag), protocol, writeback)
      File "/usr/lib64/python3.6/dbm/__init__.py", line 94, in open
        return mod.open(file, flag, mode)
    _gdbm.error: Bad magic number

Может кто-нибудь помочь мне понять, в чём дело?

Ответы [ 2 ]

0 голосов
/ 11 июля 2019

Самое простое исправление так же просто, как:

  • Остановить процесс удара сельдерея.
  • Удалить файл расписания сельдерея.
  • Запустите процесс удара сельдерея.

Я запускаю Celery beat на AWS уже много лет, и у меня до сих пор с этим не было проблем.

0 голосов
/ 11 июля 2019

Mybe, вы можете исправить это с помощью

pip install python3.5-gdbm
...