Re: walsender.c comment with no context is hard to understand

Bertrand Drouvot <bertranddrouvot.pg@gmail.com>

From: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: Peter Smith <smithpb2250@gmail.com>, Michael Paquier <michael@paquier.xyz>, vignesh C <vignesh21@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2024-07-08T05:38:25Z
Lists: pgsql-hackers
Hi,

On Mon, Jul 08, 2024 at 08:46:19AM +0530, Amit Kapila wrote:
> This sounds better but it is better to add just before we determine
> am_cascading_walsender as is done in the attached. What do you think?

Thanks! LGTM.

> 
> BTW, is it possible that the promotion gets completed after we wait
> for the required WAL and before assigning am_cascading_walsender?

Yeah, I don't think there is anything that would prevent a promotion to
happen and complete here. I did a few tests (pausing the walsender with gdb at
various places and promoting the standby).

> think even if that happens we can correctly determine the required
> timeline because all the required WAL is already available, is that
> correct 

Yeah that's correct.

Regards,

-- 
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com



Commits

  1. To improve the code, move the error check in logical_read_xlog_page().

  2. Allow logical decoding on standbys

  3. Fix walsender to exit promptly if client requests shutdown.