Re: pg_upgrade relation OID mismatches
Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
From: Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
To: Bruce Momjian <bruce@momjian.us>
Cc: Peter Eisentraut <peter_e@gmx.net>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2011-11-24T13:07:51Z
Lists: pgsql-hackers
On 24.11.2011 07:01, Bruce Momjian wrote: > Bruce Momjian wrote: >> OK, that is a heap table. My only guess is that the heap is being >> created without binary_upgrade_next_heap_pg_class_oid being set. >> Looking at the code, I can't see how the heap could be created without >> this happening. Another idea is that pg_dumpall isn't output the proper >> value, but again, how is this data type different from the others. > > I have reproduced the failure and found it was code I added to pg_dump > back in 9.0. The code didn't set the index oid for exclusion constraint > indexes. Once these were added to the regression tests for range types > recently, pg_upgrade threw an error. > > My assumption is that anyone trying to use an exclusion constraint with > pg_upgrade will get the same type of error. > > Patch attached. Should it be backpatched to 9.0 and 9.1? If I understood correctly, pg_upgrade of a database with exclusion constraints won't work without this patch? In that case, it should be backpatched. -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com