Re: [GENERAL] trouble with pg_upgrade 9.0 -> 9.1

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Groshev Andrey <greenx(at)yandex(dot)ru>
Cc: PostgreSQL-development <pgsql-hackers(at)postgreSQL(dot)org>
Subject: Re: [GENERAL] trouble with pg_upgrade 9.0 -> 9.1
Date: 2012-12-18 16:38:26
Message-ID: 20121218163826.GC24700@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers

On Mon, Dec 17, 2012 at 09:21:59PM -0500, Bruce Momjian wrote:
> > Mismatch of relation names: database "database", old rel public.lob.ВерсияВнешнегоДокумента$Документ_pkey, new rel public.plob.ВерсияВнешнегоДокумент
> > а$Документ
> > Failure, exiting

I am now confused over the error message above. This is the code that
is generating the error:

/*
* TOAST table names initially match the heap pg_class oid.
* In pre-8.4, TOAST table names change during CLUSTER; in pre-9.0,
* TOAST table names change during ALTER TABLE ALTER COLUMN SET TYPE.
* In >= 9.0, TOAST relation names always use heap table oids, hence
* we cannot check relation names when upgrading from pre-9.0.
* Clusters upgraded to 9.0 will get matching TOAST names.
*/
if (strcmp(old_rel->nspname, new_rel->nspname) != 0 ||
((GET_MAJOR_VERSION(old_cluster.major_version) >= 900 ||
strcmp(old_rel->nspname, "pg_toast") != 0) &&
strcmp(old_rel->relname, new_rel->relname) != 0))
pg_log(PG_FATAL, "Mismatch of relation names: database \"%s\", "
"old rel %s.%s, new rel %s.%s\n",
old_db->db_name, old_rel->nspname, old_rel->relname,
new_rel->nspname, new_rel->relname);

Looking at the Russian, I see 'old rel' public.lob.* and 'new rel'
public.plob.*. I assume the database is called 'database', and the
schema is called 'public', but what is 'lob' and 'plob'? If those are
tables or indexes, what is after the period? Do you have periods
embedded in the table/index names? That is certainly possible, but not
common, e.g.:

test=> create table "test.x" (y int);
CREATE TABLE

Is the schema called "public.lob"? I expected to see schema.objname.

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

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

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Merlin Moncure 2012-12-18 16:50:49 Re: evaluating expressions stored in table
Previous Message Bruce Momjian 2012-12-18 16:26:08 Re: [GENERAL] trouble with pg_upgrade 9.0 -> 9.1

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2012-12-18 17:09:10 system administration functions with hardcoded superuser checks
Previous Message Ronan Dunklau 2012-12-18 16:28:17 Re: [v9.3] writable foreign tables