Thread: pg_tablespace.spcacl

pg_tablespace.spcacl

From
"Alexi Gen"
Date:
Hello,

pg_tablespace contains information about all the tablespaces available on
the system.
The [spcacl] column for a particular record - contains a string value of the
names of users that have permissions on the tablespace.
I'm looking for any info as to why this approach was taken?
Can someone point me to a page / document?

Cheers

_________________________________________________________________
Get up-to-date with movies, music and TV. Its happening on MSN Entertainment
http://content.msn.co.in/Entertainment/Default


Re: pg_tablespace.spcacl

From
Alvaro Herrera
Date:
Alexi Gen wrote:
> Hello,
>
> pg_tablespace contains information about all the tablespaces available on
> the system.
> The [spcacl] column for a particular record - contains a string value of
> the names of users that have permissions on the tablespace.
> I'm looking for any info as to why this approach was taken?
> Can someone point me to a page / document?

Because it's the same approach used everywhere else? The underlying
reason is that it's more efficient than using a normalized approach.

Of course, internally they aren't strings, but arrays of ACL items,
which are in turn tuples of
(grantor ID, grantee ID, with_grant_option, privileges), stored as
three 32-bit ints.  They are converted in string format only for
display, just like everything else.

Does that answer your question?  If it doesn't, please be more specific.

--
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support