On Thursday, March 11, 2021, Bossart, Nathan <bossa...@amazon.com> wrote:
> Thanks for reviewing. > > On 3/11/21, 6:59 AM, "Laurenz Albe" <laurenz.a...@cybertec.at> wrote: > > I have had a look at the patch, and while I agree that this should > > be documented, I am not happy with the patch as it is. > > > > I think we should *not* document that under "server configuration". > > This is confusing and will lead people to think that a role is > > a configuration parameter. But you cannot add > > > > role = myrole > > > > to "postgresql.conf". A role is not a GUC. > > > > I think that the place to document this is > > doc/src/sgml/ref/alter_role.sgml. > > I don't think I totally agree that "role" and "session_authorization" > aren't GUCs. They are defined in guc.c, and "role" is referred to as > a GUC in both miscinit.c and variable.c. > Implementation details are not that convincing to me. As a user I wouldn’t think of these as being “server configuration” or even “client defaults”; typically they are just representations of me as session state. The minor bit of documentation pseudo-redundancy doesn’t bother me if I accept they are there own separate thing. The fact that set role and set session authorization are entirely distinct top-level commands in our documentation, as opposed to bundled in with plain set, is a much more convincing example for treating them uniquely and not just additional GUCs. David J.