On 2013-06-28 16:30:16 +0900, Michael Paquier wrote:
> > When I ran VACUUM FULL, I got the following error.
> >
> > ERROR: attempt to apply a mapping to unmapped relation 16404
> > STATEMENT: vacuum full;
> This can be reproduced when doing a vacuum full on pg_proc,
> pg_shdescription or pg_db_role_setting for example, or relations that
> have no relfilenode (mapped catalogs), and a toast relation. I still
> have no idea what is happening here but I am looking at it. As this
> patch removes reltoastidxid, could that removal have effect on the
> relation mapping of mapped catalogs? Does someone have an idea?
I'd guess you broke "swap_toast_by_content" case in cluster.c? We cannot
change the oid of a mapped relation (including indexes) since pg_class
in other databases wouldn't get the news.
Greetings,
Andres Freund
-- Andres Freund http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training &
Services