Thread: BUG #6350: Delete a role which is still in use

BUG #6350: Delete a role which is still in use

From
marc@msys.ch
Date:
The following bug has been logged on the website:

Bug reference:      6350
Logged by:          Marc Balmer
Email address:      marc@msys.ch
PostgreSQL version: 9.1.1
Operating system:   NetBSD
Description:=20=20=20=20=20=20=20=20

A role can be deleted although it is still referenced in a column privilege.
 Here is how:

create three new roles:

user, admin, new_admin

create a table, e.g. "bar" with one column, e.g. "foo", owner of the table
is "admin".

now grant "user" select rights on the "foo" column in table "bar".

now change the owner of the table "bar" to "new_admin".

drop the role "admin".  PostgreSQL won't complain.

look at the privileges of table "bar" using \dp.  The ownership change from
"admin" to "new_admin" did not make it to the column privileges.

Re: BUG #6350: Delete a role which is still in use

From
Tom Lane
Date:
marc@msys.ch writes:
> A role can be deleted although it is still referenced in a column privilege.

Hmm, it looks like ALTER TABLE OWNER forgets to update the grantors in
column privileges.  Table privileges are processed properly, but not
columns.

            regards, tom lane