Re: FATAL: catalog is missing 1 attribute(s) for relid

From: "Marc G(dot) Fournier" <scrappy(at)postgresql(dot)org>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "Marc G(dot) Fournier" <scrappy(at)postgresql(dot)org>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: FATAL: catalog is missing 1 attribute(s) for relid
Date: 2005-01-15 20:30:28
Message-ID: 20050115162533.K16498@ganymede.hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sat, 15 Jan 2005, Tom Lane wrote:

> "Marc G. Fournier" <scrappy(at)postgresql(dot)org> writes:
>> can I force the reuse of an OID? for instance, if I were to get the
>> map'ngs for those toast files, and then 'drop' the old database (I've got
>> several backups of it already), can I insert those records into pg_class,
>> with the proper OID?
>
> I was wondering about that myself. If you could relabel the pg_class
> rows for the new TOAST tables with the OIDs of the old TOAST tables,
> you'd be set. (You'd need to change the relfilenode fields of their
> owning tables too, probably, although if you just want to dump out the
> data you might not have to bother with that.) The problem is that there
> is no way to do that within Postgres. The only way I can think of is to
> shut down the postmaster and change pg_class with a hex editor, which
> seems mighty tedious and error-prone. However, with any luck you'd only
> need to fix half a dozen or so entries ... how many tables in this
> database have nonempty TOAST tables?

Hrmmm ... how about if I pg_dump --oids pg_class, make the modes and then
reload it as opg_class, shut down the database server and move opg_class
over pg_class, after making the required modifications to opg_class?

restore=# select oid from pg_class where relname = 'email';
oid
---------
8709044
(1 row)

restore=# select oid from opg_class where relname = 'email';
oid
---------
8709044
(1 row)

----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy(at)hub(dot)org Yahoo!: yscrappy ICQ: 7615664

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruno Wolff III 2005-01-15 20:38:08 Re: sparse (static analyzer) report
Previous Message Tom Lane 2005-01-15 20:15:05 Re: FATAL: catalog is missing 1 attribute(s) for relid 16396