Re: information schema/aclexplode doesn't know about default privileges
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Peter Eisentraut <peter_e@gmx.net>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2011-11-27T22:29:50Z
Lists: pgsql-hackers
Peter Eisentraut <peter_e@gmx.net> writes: > This ought to show EXECUTE privilege on the new function, but it > doesn't, because proacl is null, and nothing in the information schema > handles that specially. > I've pondered some ways to fix that. One would be to add a variant of > aclexplode() that takes a parameter telling which catalog the acl datum > came from, and aclexplode() could then substitute the data received > acldefault() for null values. The other way would be to handle this > entirely in the information schema SQL (either using some coalesce calls > or perhaps a UNION). But that would mean duplicating the knowledge of > acldefault() in a second remote place. So I'm thinking that handling it > in aclexplode() would be better. +1. It would be a really bad idea for the acldefault() logic to be duplicated someplace else, especially in SQL code where grepping for the relevant macros wouldn't even find it. regards, tom lane