Fixing sequence problems in PostgreSQL
21st April 2004
This one’s mainly for my own future reference. The following error message in PostgreSQL:
ERROR: Cannot insert a duplicate key into unique index auth_permissions_pkey
Is caused by a table with an automatically incremented primary key (set up using the SERIAL keywords in the table creation statement) getting out of sync somehow with the sequence that tracks the next available primary key. You can re-sync the sequence with the following query:
SELECT setval('auth_permissions_id_seq',
(SELECT max(id) FROM auth_permissions));
More recent articles
- OpenAI's new open weight (Apache 2) models are really good - 5th August 2025
- ChatGPT agent's user-agent - 4th August 2025
- The ChatGPT sharing dialog demonstrates how difficult it is to design privacy preferences - 3rd August 2025