我已经遇到了一个非常糟糕的情况。我有以下设置。 我有一个Django模型代表一个有限状态机与django FSM fieldDjango模型不会保存到Celery中的数据库任务
我有一个芹菜任务,发出一封电子邮件,然后推进的主要对象FSM的状态。从芹菜任务的角度来看,物体“似乎”被保存下来。但是从主Django进程的角度来看,对象并没有被更新。奇怪的是,辅助对象正在被正确保存到数据库中,并且以后可以从主Django进程访问。
我明确地调用.save()
从芹菜任务的对象,而date_last_modified = models.DateTimeField(auto_now=True, null=True)
领域拥有比主线程的芹菜任务后的时间戳,虽然我不知道这是任何东西的指示,即它可能有已更新,但更新没有刷新到数据库。
我使用Django 1.5.1, 的PostgreSQL 9.3.0, 芹菜V3.1.0, 的Redis 2.6.10
运行芹菜,像这样 $ celery -A tracking worker -E -B -l info
的任何想法,为什么这可能是发生将不胜感激
并发更新是一个问题在我的情况下,安装https://django-save-the-change.readthedocs.org帮助。谢谢! –