Re: display hot standby state in psql prompt

Поиск
Список
Период
Сортировка
От Fujii Masao
Тема Re: display hot standby state in psql prompt
Дата
Msg-id CAHGQGwHzNr71zQ7i73Jt55gnW0D-DYJtdoXHKEs0BgsjXAXw5Q@mail.gmail.com
обсуждение исходный текст
Ответ на Re: display hot standby state in psql prompt  (Jim Jones <jim.jones@uni-muenster.de>)
Ответы Re: display hot standby state in psql prompt
Список pgsql-hackers
On Sat, Oct 25, 2025 at 1:13 AM Jim Jones <jim.jones@uni-muenster.de> wrote:
>
>
>
> On 24/10/2025 17:21, Fujii Masao wrote:
> > + const char *hs = PQparameterStatus(pset.db, "in_hot_standby");
> > + const char *ro = PQparameterStatus(pset.db, "default_transaction_read_only");
> >
> > When either hs or ro is NULL, the displayed status can be incorrect.
> > For example, connecting to a standby server running PostgreSQL 10
> > incorrectly shows "read/write". In such cases, wouldn't it be clearer
> > to display something like "unknown", similar to how the "Hot Standby"
> > column in \conninfo reports "unknown"?
>
> Oh, it didn't occur to me to test this edge case. Thanks for the hint!
>
> Would this be what you have in mind?

Yes, thanks for working on this!


> if (!hs || !ro)
>     strlcpy(buf, "unknown", sizeof(buf));
> else if ((hs && strcmp(hs, "on") == 0) ||
>     (ro && strcmp(ro, "on") == 0))

I think the "hs &&" and "ro &&" checks are no longer needed,
since we've already confirmed they're not NULL at that point.

Also, should "unknown" be marked for translation, as in the \conninfo code?
I'm not sure whether showing a translated string in the psql prompt is
desirable, though.

Regards,

--
Fujii Masao



В списке pgsql-hackers по дате отправления: