No warning for a no-op REVOKE - Mailing list pgsql-general

From Christophe Pettus
Subject No warning for a no-op REVOKE
Date
Msg-id B3BA06C0-EB3B-4AE7-8C03-61A8E4D13971@thebuild.com
Whole thread Raw
Responses Re: No warning for a no-op REVOKE  (Daniel Gustafsson <daniel@yesql.se>)
Re: No warning for a no-op REVOKE  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
Right now, if you do a REVOKE that doesn't actually revoke anything, it works silently.  This can be a bit of a
foot-gun. For example: 

    CREATE FUNCTION f() RETURNS int as $$ SELECT 1; $$ LANGUAGE sql;
    REVOKE EXECUTE ON FUNCTION f() FROM lowpriv;

Naively, it might be expected that `lowpriv` can't execute the function, but unless default privileges have been
changed,`lowpriv` still can under the default grant of EXECUTE to PUBLIC.  Since there was no previous grant to
`lowpriv`,nothing actually changes in the ACL.  This bit a client recently. 

Is it worth generating a warning in this case?


pgsql-general by date:

Previous
From: Christophe Pettus
Date:
Subject: Re: Is this a buggy behavior?
Next
From: Daniel Gustafsson
Date:
Subject: Re: No warning for a no-op REVOKE