On 26.01.23 01:22, Nathan Bossart wrote:
Here is an early draft of some modest improvements to the user.c error
messages. I basically just tried to standardize the style of and add
context to the existing error messages. I used errhint() for this extra
context, but errdetail() would work, too. This isn't perfect. You might
still have to go through a couple rounds of errors before your role has all
the privileges it needs for a command, but this seems to improve matters a
little.
I think there is still a lot of room for improvement, but I wanted to at
least get the discussion started before I went too far.
This is good. If I may assign some more work ;-), we have a bunch of
error messages like
errmsg("must be superuser or a role with privileges of the
pg_write_server_files role to create backup stored on server")
errmsg("must be superuser or have privileges of the
pg_execute_server_program role to COPY to or from an external program")
errmsg("must be superuser or have privileges of pg_read_all_settings to
examine \"%s\"", ...)
which could also be split up into a pair of
errmsg("permission denied to xxx")
errdetail("You must be superuser or ...")