oids and pg_class_oid_index constraint violations

From: "Aaron Harsh" <ajh(at)rentrak(dot)com>
To: <pgsql-general(at)PostgreSQL(dot)org>
Subject: oids and pg_class_oid_index constraint violations
Date: 2005-08-03 19:35:26
Message-ID: s2f0ba35.043@rtk_mail_1.rentrak.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

We've just recently started seeing sporadic constraint violations on system tables. For example:

duplicate key violates unique constraint "pg_class_oid_index" [for Statement "CREATE TEMPORARY TABLE...

and

duplicate key violates unique constraint "pg_toast_4292803267_index" [for Statement "INSERT INTO...

and the occasional

unexpected chunk number 0 (expected 1) for toast value

I suspect that the problem is due to oid reuse, but I'd like to get a second opinion. We've just recently grown to a billion tuples in our database (with all our tables built with oids), and the volume of activity makes me think it's likely that the majority of records have been updated three or four times.

Our current plan for dealing with the problem is to 'SET WITHOUT OIDS' on our tables, then dump & restore the database.

Does it seem reasonable that oid reuse could cause the constraint violations? Does it seem likely that this would fix the problem? Is there an easier way to solve the problem?

Thanks in advance

--
Aaron Harsh
ajh(at)rentrak(dot)com
503-284-7581 x347

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Matt Miller 2005-08-03 19:58:13 PL/pgSQL: EXCEPTION NOSAVEPOINT
Previous Message Peter Wilson 2005-08-03 19:34:47 Re: feeding big script to psql