Re: [GENERAL] pg_upgrade problem

Bruce Momjian <bruce@momjian.us>

From: Bruce Momjian <bruce@momjian.us>
To: depesz@depesz.com
Cc: PostgreSQL-development <pgsql-hackers@postgreSQL.org>
Date: 2011-08-26T04:18:55Z
Lists: pgsql-hackers

Attachments

OK, this was very helpful.  I found out that there is a bug in current
9.0.X, 9.1.X, and HEAD that I introduced recently when I excluded temp
tables.  (The bug is not in any released version of pg_upgrade.)  The
attached, applied patches should fix it for you.  I assume you are
running 9.0.X, and not 9.0.4.

---------------------------------------------------------------------------

hubert depesz lubaczewski wrote:
> On Thu, Aug 25, 2011 at 04:43:02PM -0400, Bruce Momjian wrote:
> > Please check the old cluster.
> 
> Sure:
> 
> =# SELECT reltoastrelid FROM pg_class WHERE relname  = 'actions';                                                                                                                                                                             
>  reltoastrelid 
> ---------------
>       82510395
>       71637071
> (2 rows)
> 
> =# SELECT oid::regclass, reltoastrelid FROM pg_class WHERE relname  = 'actions';                                                                                                                                                                             
>       oid      | reltoastrelid 
> ---------------+---------------
>  xxxxx.actions |      82510395
>  yyyyy.actions |      71637071
> (2 rows)
> 
> =# select oid, relfilenode from pg_class where oid in (SELECT reltoastrelid FROM pg_class WHERE relname  = 'actions');
>    oid    | relfilenode 
> ----------+-------------
>  82510395 |    82510395
>  71637071 |    71637071
> (2 rows)
> 
> =# select oid from pg_database where datname = current_database();
>    oid    
> ----------
>  71635381
> (1 row)
> 
> $ ls -l 6666/base/71635381/{71637071,82510395}
> -rw------- 1 postgres postgres 0 2009-10-12 06:49 6666/base/71635381/71637071
> -rw------- 1 postgres postgres 0 2010-08-19 14:02 6666/base/71635381/82510395
> 
> > > > > One more thing - one of earlier tests actually worked through
> > > > > pg_upgrade, but when running vacuumdb -az on newly started 9.0.4, I got
> > > > > error about missing transaction/clog - don't remember exactly what it
> > > > > was, though.
> > > > THere was a bug in how how pg_upgrade worked in pre-9.0.4 --- could it
> > > > have been that?
> > > It was done definitely using 9.0.4.
> > Good.
> 
> Not sure if it's good, since it was after the clog error was fixed, and
> I still got it :/
> 
> but anyway - the problem with 71637071 is more important now.
> 
> Best regards,
> 
> depesz

-- 
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +