Re: [PATCHES] Merge pg_shadow && pg_group -- UNTESTED - Mailing list pgsql-hackers

From Tom Lane
Subject Re: [PATCHES] Merge pg_shadow && pg_group -- UNTESTED
Date
Msg-id 26327.1106449345@sss.pgh.pa.us
Whole thread Raw
Responses Re: [PATCHES] Merge pg_shadow && pg_group -- UNTESTED  (Stephen Frost <sfrost@snowman.net>)
List pgsql-hackers
Stephen Frost <sfrost@snowman.net> writes:
>   Here's a proof-of-concept pretty much untested (it compiles) patch
>   against HEAD for review of the general approach I'm taking to 
>   merging pg_shadow and pg_group.  This is in order to support group 
>   ownership and eventually roles.  This patch includes my grammar and 
>   get_grosysid move patches, and so conflicts with them.

One point is that you can't simply whack pg_shadow around and eliminate
pg_group, because that will break lord-knows-how-much client software
that looks at these tables.  What I'm envisioning is to create a new
system catalog (say pg_role) that holds the New Truth, and then make
pg_shadow and pg_group be predefined views on this catalog that provide
as much backwards compatibility as we can manage.

I believe this was done once before already --- I think that the pg_user
view exists to emulate a prior incarnation of pg_shadow.

A related point is that I hope soon to get rid of type AclId and
usesysid/grosysid/rolesysid and start identifying roles by Oids.
This is connected to Alvaro's work to create proper dependencies
for object owners and privilege entries: once that exists and you
can't drop a referenced role, there will be no need to allow explicit
setting of the SYSID for a new user.  Not sure if you want to do any
of the associated changes in your patch, but if int4 is bugging you
then feel free to change it.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Extending System Views: proposal for 8.1/8.2
Next
From: Tom Lane
Date:
Subject: Re: [PATCHES] Merge pg_shadow && pg_group -- UNTESTED