Я вижу странную проблему с приложением Django, которое использует Celery в качестве очереди задач:
- Я запускаю задачу.
- Во время выполнения задача вызываетupdate_state (...) для установки состояния задачи для индикации прогресса.
- Задача завершена.Я проверяю это с помощью журналов.
Тем не менее, это представление (http://myapp/tasks/37d9a3ac-5bd2-4791-9729-2234ff3be762/status) возвращает результат STALE в течение различного периода времени после завершения задачи. Я могу воспроизвести его, используя Redis и базу данных, какback-end. В конечном итоге состояние задачи возвращается правильно, но это действительно нарушает мое приложение, потому что пользовательский интерфейс опрашивает, чтобы проверить, завершена ли задача, прежде чем пользователь сможет что-либо сделать.
РЕДАКТИРОВАТЬ: мое приложение развернуто на Heroku. Интересно, Cedar выполняет кэширование ответов ??
Есть идеи, что происходит?