On Mon, Oct 5, 2015 at 06:00:27PM +0000, Guo, Yun wrote:
> >Wow, that is weird. Can you run this query on the old cluster and show
> >us the output?
> >
> > SELECT * FROM pg_type WHERE oid = 1670699;
>
> This turns out to be empty in all of the databases:
> postgres=# SELECT * FROM pg_type WHERE oid = 1670699;
> typname | typnamespace | typowner | typlen | typbyval | typtype |
> typcategory | typispreferred | typisdefined | typdelim | typrelid | typ
> elem | typarray | typinput | typoutput | typreceive | typsend | typmodin |
> typmodout | typanalyze | typalign | typstorage | typnotnull | t
> ypbasetype | typtypmod | typndims | typcollation | typdefaultbin |
> typdefault | typacl
> ---------+--------------+----------+--------+----------+---------+---------
> ----+----------------+--------------+----------+----------+----
> -----+----------+----------+-----------+------------+---------+----------+-
> ----------+------------+----------+------------+------------+--
> -----------+-----------+----------+--------------+---------------+---------
> ---+--------
> (0 rows)
OK, try running the error query in all the databases then.
> >This query doesn't even query pg_type, so it must be some internal use
> >of pg_type.
> >
> >The reason check doesn't show the failure is that only a non-check run
> >collects pg_class.oid values, but we never expect that to fail so we
> >don't test it in check mode.
> >
> >My guess is that something is messed up in your system catalogs. Can
> >you try running this query in each old database and see if it fails.
>
> If my old server system catalog is messed up is there way to repair it?
Usually, once we find the cause.
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ As you are, so once was I. As I am, so you will be. +
+ Roman grave inscription +