Re: duplicate OID issue when using pg_upgrade to move from 8.4 to 9.2
От | Adrian Klaver |
---|---|
Тема | Re: duplicate OID issue when using pg_upgrade to move from 8.4 to 9.2 |
Дата | |
Msg-id | 52C44BFC.7020301@gmail.com обсуждение исходный текст |
Ответ на | duplicate OID issue when using pg_upgrade to move from 8.4 to 9.2 ("Reiser, John J." <Reiser@rowan.edu>) |
Список | pgsql-general |
On 01/01/2014 08:53 AM, Reiser, John J. wrote: > Hello, > > I'm working on an upgrade to our database cluster, attempting to move > from 8.4 to 9.2. I'm encountering the following error when I attempt the > upgrade (in pg_upgrade_restore.log): > > CREATE FUNCTION "st_envelope_in"(cstring) RETURNS st_envelope > LANGUAGE "c" IMMUTABLE STRICT > AS 'st_geometry', 'ST_ENVELOPE_In'; > psql:pg_upgrade_dump_db.sql:371910: ERROR: duplicate key value > violates unique constraint "pg_type_oid_index" > DETAIL: Key (oid)=() already exists. Well this means an OID is being used twice in the system catalog pg_type. You could look up that oid(1407909) in the 8.4 pg_type and see what it is. Also look it up in the fresh pg_type when you init the 9.2 cluster. > > I'm running this on CentOS 6; both 8.4 and 9.2 are installed from the > Yum repository. PostgreSQL is primarily used for GIS data and has ESRI > st_geometry and PostGIS installed in several of the databases. (ESRI's > support is only up to 9.2, which is why I'm not attempting a move to > 9.3.) The interesting thing with this error is that when I wipe out the > 9.2 data directory, re-initdb, and run the upgrade again, I now get a > different error: > > CREATE TABLESPACE "sde1" OWNER "sde" LOCATION '/disk2/pgsql/data/sde'; > psql:pg_upgrade_dump_globals.sql:294: ERROR: directory > "/disk2/pgsql/data/sde/PG_9.2_201204301" already in use as a tablespace When you ran the upgrade above it probably got as far as creating the 9.2 tablespaces in /disk2/pgsql/data/sde. You now have two versions of the tablespaces, one labeled PG_8.4_* and the other PG_9.2_201204301. Along with wiping out the 9.2 data directory you need to wipe out the 9.2 tablespace directory. > > > (I have several of our ESRI SDE databases in their own tablespace.) > > Before starting this process, I made a complete file-based backup of the > 8.4 data directory. When I restore the backup to /var/lib/pgsql and run > pg_upgrade again, I receive the first error again, with the same exact > OID value. I will admit I don't know much about Postgres internals and > I'm not sure how to proceed with this duplicate OID issue. > > I'm going to try running pg_upgrade with the link option now, but I > don't know if that will help. > > Any assistance provided would be greatly appreciated. > > Thanks, > John > > John Reiser > > /Geospatial Research Lab <http://gis.rowan.edu/>/ > > *Rowan University <http://rowan.edu/geography>* > > 201 Mullica Hill Road > > Glassboro, NJ 08028 > > phone: 856-256-4817 > > cell: 856-347-0047 > > twitter: @rowangeolab <http://twitter.com/rowangeolab> > -- Adrian Klaver adrian.klaver@gmail.com
В списке pgsql-general по дате отправления: