我已經遇到了一個非常糟糕的情況。我有以下設置。 我有一個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幫助。謝謝! –