Prevent startup of logical replication launcher during pg_upgrade
authorMichael Paquier <michael@paquier.xyz>
Thu, 2 Nov 2023 05:34:51 +0000 (14:34 +0900)
committerMichael Paquier <michael@paquier.xyz>
Thu, 2 Nov 2023 05:34:51 +0000 (14:34 +0900)
commit7021d3b1766420ac4968fa0ff81873e81b7fd641
tree890cd68d8e185c96446eee26f332f60e521056b7
parent40d5e5981cc0fa81710dc2399b063a522c36fd68
Prevent startup of logical replication launcher during pg_upgrade

The logical replication launcher may start apply workers during an
upgrade.  This could be the cause of corruptions on a new cluster if
these are able to apply changes before the physical files are copied
over to the new cluster.

The chance of being able to do so is small as pg_upgrade uses its own
port and unix domain directory (the latter is customizable with
--socketdir), but just preventing the launcher to start is safer at the
end, because we are then sure that no changes will be applied.  Like
29d0a77fa660 for max_slot_wal_keep_size, this is only set when a cluster
uses v17 or newer.

Author: Vignesh C
Discussion: https://postgr.es/m/CALDaNm2g9ZKf=y8X6z6MsLCuh8WwU-=Q6pLj35NFi2M5BZNS_A@mail.gmail.com
src/bin/pg_upgrade/server.c