Re: [PoC] pg_upgrade: allow to upgrade publisher node
Amit Kapila <amit.kapila16@gmail.com>
From: Amit Kapila <amit.kapila16@gmail.com>
To: "Jonathan S. Katz" <jkatz@postgresql.org>
Cc: vignesh C <vignesh21@gmail.com>, "Hayato Kuroda (Fujitsu)" <kuroda.hayato@fujitsu.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>,
Julien Rouhaud <rjuju123@gmail.com>
Date: 2023-08-07T05:30:13Z
Lists: pgsql-hackers
On Wed, Aug 2, 2023 at 7:46 AM Jonathan S. Katz <jkatz@postgresql.org> wrote: > > Can I take this a step further on the user interface and ask why the > flag would be "--include-logical-replication-slots" vs. being enabled by > default? > > Are there reasons why we wouldn't enable this feature by default on > pg_upgrade, and instead (if need be) have a flag that would be > "--exclude-logical-replication-slots"? Right now, not having the ability > to run pg_upgrade with logical replication slots enabled on the > publisher is a a very big pain point for users, so I would strongly > recommend against adding friction unless there is a very large challenge > with such an implementation. > Thanks for acknowledging the need/importance of this feature. I also don't see a need to have such a flag for pg_upgrade. The only reason why one might want to exclude slots is that they are not up to date w.r.t WAL being consumed. For example, one has not consumed all the WAL from manually created slots or say some subscription has been disabled before shutdown. I guess in those cases we should give an error to the user and ask to remove such slots before the upgrade because anyway, those won't be usable after the upgrade. Having said that, I think we need a flag for pg_dump to dump the slots. -- With Regards, Amit Kapila.
Commits
-
Fix issues in binary_upgrade_logical_slot_has_caught_up().
- 0bf62460bb9e 17.0 landed
-
Fix a random failure in 003_logical_slots.pl.
- 63c5df126abb 17.0 landed
-
Fix a test in 003_logical_slots.
- 3e36e48d8efe 17.0 landed
-
Fix uninitialized slot array access during the upgrade.
- a7db71ed2787 17.0 landed
-
Fix the test 003_logical_slots.
- 8af917be6bad 17.0 landed
-
Commit b195e6d482 forgot to update meson.build.
- 8949b978ff49 17.0 landed
-
Use shorter file names in the upgrade logical slots test.
- b195e6d482b8 17.0 landed
-
Migrate logical slots to the new node during an upgrade.
- 29d0a77fa660 17.0 landed
-
Flush logical slots to disk during a shutdown checkpoint if required.
- e0b2eed047df 17.0 landed
-
Prevent possibility of panics during shutdown checkpoint.
- c6c333436491 10.0 cited