我正在使用Django,偶尔我会收到此错误:
IntegrityError:重复的键值违反了唯一约束“ myapp_mymodel_pkey”
详细信息:键(id)=(1)已存在。
实际上,我的Postgres数据库确实有一个myapp_mymodel对象,其主键为1。
为什么Postgres会再次尝试使用该主键?或者,这很可能是我的应用程序(或Django的ORM)引起的吗?
刚刚,此问题连续发生了3次。我发现的是,对于给定的表,它确实发生了一次或多次,然后不再发生。它似乎在每个表完全停止运行几天之前就发生了,每个表至少发生一分钟左右才发生,并且只是间歇地发生(并非所有表都立即发生)。
这个错误是如此断断续续的事实(在2周内仅发生了3次左右-数据库上没有其他负载,只是我测试了我的应用程序)使我非常警惕低级问题。