Re: Reducing power consumption on idle servers

Thomas Munro <thomas.munro@gmail.com>

From: Thomas Munro <thomas.munro@gmail.com>
To: Simon Riggs <simon.riggs@enterprisedb.com>
Cc: Robert Haas <robertmhaas@gmail.com>, Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>, Kyotaro Horiguchi <horikyota.ntt@gmail.com>, Andres Freund <andres@anarazel.de>, Zheng Li <zhengli10@gmail.com>, Jim Nasby <nasbyj@amazon.com>, Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2022-11-18T20:25:36Z
Lists: pgsql-hackers
On Sat, Nov 19, 2022 at 7:54 AM Simon Riggs
<simon.riggs@enterprisedb.com> wrote:
> I agree. I can't see a reason to keep it anymore.

+    Use of <varname>promote_trigger_file</varname> is deprecated. If you're

I think 'deprecated' usually implies that it still works but you
should avoid it.  I think you need something stronger.

> I'm nervous about not having any wakeup at all, but since we are
> removing the parameter there is no other reason not to do as Andres
> suggests.

Why?  If we're accidentally relying on this timeout for recovery to
not hang in some situation, that's a bug waiting to be discovered and
fixed and it won't be this patch's fault.

> New version attached, which assumes that the SIGALRMs are silenced on
> the other thread.

I tested this + Bharath's v5 from the other thread.  meson test
passes, and tracing the recovery process shows that it is indeed,
finally, completely idle.  Huzzah!



Commits

  1. Remove promote_trigger_file.

  2. Add pg_promote function

  3. pg_ctl promote