Due to the fact that group system id's and user system id's can
overlap, pg_class will need to change in order to accomedate group
ownership. The things I've thought of so far, in order of preference:
a) Add a boolean field 'relgroup_owned' which is 'false' when relowner
is a user and 'true' when relowner is a group.
b) Add an integer field 'relgroup_owner' which is the 'group' owner of
the relation, this would imply 'dual' ownership, ala unix
semantics, but doesn't quite fit in w/ Postgres ACLs, imv.
c) Don't change pg_class's structure but change the meaning of
'relowner' such that positive numbers are 'user' owners and
negative numbers are 'group' owners, where the group id is the
abs(relowner). Similar to (a) but seems kind of nasty to me. Also
means that '0' couldn't ever be used for a system id, and that it'd
be more difficult to change relowner to Oid later (probably
involving something like (a)).
pgsql-hackers by date
|Next:||From: Tom Lane||Date: 2004-12-29 17:05:16|
|Subject: Re: buildfarm NetBSD/m68k tsearch regression failure |
|Previous:||From: Michael Fuhr||Date: 2004-12-29 15:53:32|
|Subject: Re: ECPG CONNECT TO DEFAULT segfault|