Skip site navigation (1) Skip section navigation (2)

Re: BUG #2310: "ALTER TYPE name OWNER TO new_owner" not working

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "eKo1" <bernd(at)tti(dot)hn>
Cc: pgsql-bugs(at)postgresql(dot)org, Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au>
Subject: Re: BUG #2310: "ALTER TYPE name OWNER TO new_owner" not working
Date: 2006-03-10 01:10:54
Message-ID: 29303.1141953054@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-bugs
I wrote:
> The relevant owner field for a composite type is pg_type.typowner.
> We don't bother to maintain pg_class.relowner for the subsidiary
> pg_class entry.

Actually, now that I look at it, there is a non-cosmetic issue here:
we seem to be creating a dependency link for the pg_class owner field.
We have to either not do that, or be willing to fix it during ALTER TYPE
OWNER.  For instance

regression=# create user foo;
CREATE ROLE
regression=# create user bar;
CREATE ROLE
regression=# \c - foo
You are now connected as new user "foo".
regression=> create type mytype as (f1 int);
CREATE TYPE
regression=> \c - postgres
You are now connected as new user "postgres".
regression=# drop user foo;
ERROR:  role "foo" cannot be dropped because some objects depend on it
DETAIL:  owner of composite type mytype
owner of type mytype
regression=# alter type mytype owner to bar;
ALTER TYPE
regression=# drop user foo;
ERROR:  role "foo" cannot be dropped because some objects depend on it
DETAIL:  owner of composite type mytype
regression=#

			regards, tom lane

In response to

Responses

pgsql-bugs by date

Next:From: Tom LaneDate: 2006-03-10 02:47:46
Subject: Re: BUG #2311: Toast table chunk_id overflow
Previous:From: Tom LaneDate: 2006-03-10 00:50:19
Subject: Re: BUG #2310: "ALTER TYPE name OWNER TO new_owner" not working

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group