From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
>
> "Marc Sherman" <msherman@projectile.ca> writes:
> > I recently installed postgresql 7.1.1, and now when I run pg_dumpall
> > (which I do in a nightly script for backups), I get the following
> > messages, duplicated for each database in the system:
>
> > WARNING: owner of type 'pg_inherits' appears to be invalid
> > WARNING: owner of type 'pg_index' appears to be invalid
>
> Sounds like you have no pg_shadow entry for the postgres user.
No, that's not it:
template1=# select * from pg_shadow;
usename | usesysid | usecreatedb | usetrace | usesuper | usecatupd |
passwd | valuntil
----------+----------+-------------+----------+----------+-----------+------
--+----------
postgres | 31 | t | t | t | t |
|
msherman | 1000 | t | f | f | f |
|
www-data | 33 | f | f | f | f |
|
(3 rows)
This is strange, though -- the problem types have typowner set
to 103 in pg_type, which is clearly invalid. 103 happens to be
the Linux user ID (in passwd) for the postgres user. Strange.
I suspect this may be a problem with the Debian install scripts;
Debian is forcing postgres' user id to be 31 in the db, since it
used to use a reserved user id for postgres in the os.
Is it enough for me to log on to each of my databases as user
postgres, and execute the query "update pg_type set typowner=31
where typowner=103;" to fix this problem? Are there any other
hidden databases I should fix besides template1?
Thanks for pointing me in the right direction, Tom.
- Marc