私は比較的単純な Django アプリを持っていますが、db 操作でかなりの同時実行を担当する非常に重い使用法があります。
タグモデルへのm2mを備えたモデル投稿があります。
コード内の 1 行p.add(t)
が繰り返し mysql 例外を引き起こしています (p
は Post インスタンスで、t
は Tag インスタンスです)。
IntegrityError: (1062, "Duplicate entry '329051-1827414' for key 'post_id'")
これが発生すると、これを手動でp.add(t)
正常に実行できるため、通常の実行時に db/app が特定の状態にあることに関係している必要があります。1000回のタグ追加試行ごとに約1回発生しますが、検出できるパターンはありません(つまり、例の「329051-1827414」ペアの両方の数字が変化します)
関連するテーブルのmysqlのACHECK TABLE
は、それらがすべて一見OKであることを示しています。
何か案は?