Celery / Celery beat застрял на старой версии скрипта
У меня есть приложение django, работающее на AWS EC2 и использующее Celery для периодических обновлений. Недавно мне пришлось обновить сценарий обработки данных в приложении Django, но что бы я ни пытался сделать, Celery продолжает использовать старые копии сценария обработки.
Вот краткая информация:
- С 12 апреля изменился способ публикации данных. Поэтому старый процессор перестал работать с любыми данными после 12 апреля.
- Я изменил скрипт, чтобы он работал со всеми данными до и после 12 апреля, и объединил изменения в продакшн.
- GitHub Actions успешно запустился, построил контейнеры и развернул их на EC2.
- Если я войду в экземпляр EC2 и войду в контейнер, я могу запустить команду
manage.py update_nameofmydatamodel
, и она выполняется правильно и обновляет все данные должным образом (я могу сказать, потому что это кормит веб-сайт viz, который затем правильно обновляется) .
- Когда Celery Beat запускается на ночь, данные возвращаются к обработке ТОЛЬКО до 12 апреля (я могу сказать, потому что я захожу на сайт viz и он возвращается к обработке данных только до 12 апреля) .
- Я удалил модель данных из списка моделей для обновления через Celery Beat, пока не выяснил, откуда исходит проблема. Но... обновление все равно запускается!
Вот все, что я пробовал:
- Celery использует кэш redis:alpine, я попробовал очистить кэш с помощью
FLUSHALL
иFLUSH SCRIPTS
.
- Я запустил
celery -A projectName purge
и получил сообщение, что 0 сообщений было удалено из очереди .
- Я полностью удалил контейнеры celery, celery beat и redis, а затем снова вывел последние версии на EC2 .
- Я остановил все контейнеры и перезапустил их (web, nginx, celery, beat, redis); я подтвердил, что после остановки контейнеров все процессы celery также были остановлены .
- Я полностью остановил экземпляр EC2 и перезапустил его
Что я упускаю в плане того, где celery может кэшировать скрипты или где может быть запущен зомби-процесс? Я ни в коем случае не эксперт по Django и унаследовал развертывание этого проекта, так что я надеюсь, что я просто упускаю что-то очевидное на данный момент.
Заранее спасибо за любые идеи.