Attached is a patch that skips orphaned temporary relations in pg_upgrade if 
they are lingering around. It works for 9.0 -> 9.1 upgrades, however I wasn't 
able to tell when pg_class.relistemp was added so if it was unavailable in 
versions prior to 9.0 an additional check will have to be added.

Thanks
Dave Byrne

-----Original Message-----
From: Tom Lane [mailto:t...@sss.pgh.pa.us] 
Sent: Wednesday, August 10, 2011 12:29 PM
To: Dave Byrne
Cc: pgsql-hackers@postgresql.org; Bruce Momjian
Subject: Re: [HACKERS] Possible Bug in pg_upgrade 

Dave Byrne <dby...@mdb.com> writes:
> Beginning with commit 002c105a0706bd1c1e939fe0f47ecdceeae6c52d
> pg_upgrade will fail if there are orphaned temp tables in the current
> database with the message 'old and new databases "postgres" have a
> different number of relations'

> On line 41 of pg_upgrade/info.c pg_upgrade checks that the number of
> relations are the same but includes orphaned temp tables in the comparison.

> Is this expected behavior?

Seems like an oversight.

                        regards, tom lane

Attachment: pg_upgrade_tmp.patch
Description: pg_upgrade_tmp.patch

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to