Re: proposal: psql: show current user in prompt
От | Pavel Stehule |
---|---|
Тема | Re: proposal: psql: show current user in prompt |
Дата | |
Msg-id | CAFj8pRBLSNRmO_a=YsEVfQKYK6Tr3ppcbkfDr46J+ALHBpFXpQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: proposal: psql: show current user in prompt (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: proposal: psql: show current user in prompt
|
Список | pgsql-hackers |
út 4. 4. 2023 v 18:42 odesílatel Tom Lane <tgl@sss.pgh.pa.us> napsal:
Kirk Wolak <wolakk@gmail.com> writes:
> Changed status to Ready for Committer. (100% Guessing here...)
Basically, I want to reject this on the grounds that it's not
useful enough to justify the overhead of marking the "role" GUC
as GUC_REPORT. The problems with it not going to work properly
with old servers are an additional reason not to like it.
If I understand to next comment correctly, the overhead should not be too big
/*
* ReportChangedGUCOptions: report recently-changed GUC_REPORT variables
*
* This is called just before we wait for a new client query.
*
* By handling things this way, we ensure that a ParameterStatus message
* is sent at most once per variable per query, even if the variable
* changed multiple times within the query. That's quite possible when
* using features such as function SET clauses. Function SET clauses
* also tend to cause values to change intraquery but eventually revert
* to their prevailing values; ReportGUCOption is responsible for avoiding
* redundant reports in such cases.
*/
* ReportChangedGUCOptions: report recently-changed GUC_REPORT variables
*
* This is called just before we wait for a new client query.
*
* By handling things this way, we ensure that a ParameterStatus message
* is sent at most once per variable per query, even if the variable
* changed multiple times within the query. That's quite possible when
* using features such as function SET clauses. Function SET clauses
* also tend to cause values to change intraquery but eventually revert
* to their prevailing values; ReportGUCOption is responsible for avoiding
* redundant reports in such cases.
*/
But, if I lose the argument and we do commit this, I think it
should just print an empty string when dealing with an old server.
"ERR02000" is an awful idea, not least because it could be a
real role name.
ok
BTW, we should probably get rid of the PQuser() fallback in
%n (session_username()) as well. It's unlikely that there are
still servers in the wild that don't report "session_authorization",
but if we did find one then the output is potentially misleading.
I'd rather print nothing than something that might not be your
actual session authorization setting.
It should be a separate patch?
Updated patch attached
Regards
Pavel
regards, tom lane
Вложения
В списке pgsql-hackers по дате отправления: