On 2016/04/14 2:10, Stephen Frost wrote:
>>> I observe this:
>>> postgres=# SET ROLE TO NONE;
>>> postgres=# SET ROLE TO nonexistent;
>>> ERROR: role "nonexistent" does not exist
>>> postgres=# SET ROLE TO pg_signal_backend;
>>> ERROR: invalid value for parameter "role": "pg_signal_backend"
>>> Is that behavior deliberate? Might it be better to handle the case
>>> specially much as setting to "none" works?
> I don't think it makes sense to say the role doesn't exist when it does, in
> fact, exist.
Sorry, I didn't mean to say that we should error with "<reserved-role>
does not exist" on such SET ROLE attempts. Like Michael, I was a bit
surprised to find that it output "invalid value for parameter".
So, if consensus emerges that we should indeed disallow SET ROLE
<reserved-role-spec>, I would +1 Michael's proposed GUC_check_err*()-based
Sent via pgsql-hackers mailing list (firstname.lastname@example.org)
To make changes to your subscription: