Skip site navigation (1) Skip section navigation (2)

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: (view raw, whole thread or download thread mbox)
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';
(1 row)

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

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

In response to


pgsql-hackers by date

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

Privacy Policy | About PostgreSQL
Copyright © 1996-2018 The PostgreSQL Global Development Group