ฉันใช้ Django และทุกครั้งที่ฉันได้รับข้อผิดพลาด:
IntegrityError: ค่าคีย์ที่ซ้ำกันละเมิดข้อ จำกัด ที่ไม่ซ้ำกัน "myapp_mymodel_pkey" ราย
ละเอียด: Key (id) = (1) มีอยู่แล้ว
จริง ๆ แล้วฐานข้อมูล Postgres ของฉันมีวัตถุmyapp_mymodel ที่มีคีย์หลักเป็น 1
เหตุใด Postgres จะพยายามใช้คีย์หลักนั้นอีกครั้ง หรือนี่เป็นไปได้มากว่าแอปพลิเคชันของฉัน (หรือ ORM ของ Django) เป็นสาเหตุให้เกิดปัญหานี้
ปัญหานี้เกิดขึ้น 3 ครั้งติดต่อกันตอนนี้ สิ่งที่ฉันได้พบก็คือว่าเมื่อมันไม่เกิดขึ้นมันเกิดขึ้นหนึ่งครั้งหรือมากกว่าในแถวในตารางที่ระบุนั้นไม่ได้อีกครั้ง ดูเหมือนว่าจะเกิดขึ้นสำหรับทุกตารางก่อนที่จะหยุดอย่างสมบูรณ์สำหรับวันที่เกิดขึ้นเป็นเวลาอย่างน้อยหนึ่งนาทีหรือดังนั้นต่อตารางเมื่อมันเกิดขึ้นและจะเกิดขึ้นเป็นระยะ ๆ เท่านั้น (ไม่ตารางทั้งหมดทันที)
ความจริงที่ว่าข้อผิดพลาดนี้เป็นระยะ ๆ (เกิดขึ้นเพียง 3 ครั้งหรือมากกว่านั้นใน 2 สัปดาห์ - ไม่มีการโหลดอื่น ๆ บนฐานข้อมูลเพียงฉันทดสอบใบสมัครของฉัน) เป็นสิ่งที่ทำให้ฉันระวังปัญหาระดับต่ำ