On Tue, Jan 27, 2026 at 5:36 PM Jim Jones <[email protected]> wrote: > > > > On 27/01/2026 04:46, Fujii Masao wrote: > > Yeah, I'm fine with switching back to the original proposal. > > PFA v8 containing the original proposal. > > It now only checks in_hot_standby to determine if the current state of > the connected server is "primary" or "standby". > > psql (19devel) > Type "help" for help. > > postgres=# \set PROMPT1 '[%i] # ' > [standby] # SHOW in_hot_standby; > in_hot_standby > ---------------- > on > (1 row) > > [standby] # SELECT pg_promote(); > pg_promote > ------------ > t > (1 row) > > [primary] # SHOW in_hot_standby; > in_hot_standby > ---------------- > off > (1 row) > > [primary] # > > The documentation was updated accordingly.
Thanks for updating the patch! It looks like the short description for %i is missing from the header comment at the top of get_prompt(). Could you add that? In the patch, nothing is shown when connected to PostgreSQL 13 or older (i.e., versions that do not report in_hot_standby). Would it be better to show "?", similar to what %S does? + else + buf[0] = '\0'; + } + else + buf[0] = '\0'; The second "else + buf[0] = '\0'" does not seem necessary. + <listitem> + <para> + Indicates whether the server is in hot standby mode. The indentation style for "<para>" and its contents seems to differ from the surrounding prompt option descriptions. For consistency, it might be better to match the existing style used nearby. + The value is shown as <literal>standby</literal> if the server reports + <literal>in_hot_standby</literal> as <literal>on</literal>, Would it be better to replace "<literal>in_hot_standby</literal>" with "<xref linkend="guc-in-hot-standby"/>"? As with %S, it would be helpful to explicitly document what is shown when connected to PostgreSQL 13 or older. For example, something like: ----------------- Indicates whether the connected server is running in hot standby mode. The value is shown as <literal>standby</literal> if the server is currently in hot standby and reports <xref linkend="guc-in-hot-standby"/> as <literal>on</literal>, and <literal>primary</literal> otherwise. This is useful when connecting to multiple servers to quickly determine the role of each connection. A value of <literal>?</literal> is shown when connected to a server running <productname>PostgreSQL</productname> 13 or older. ----------------- Regards, -- Fujii Masao
