RE: pg_recvlogical cannot create slots with failover=true
Hayato Kuroda (Fujitsu) <kuroda.hayato@fujitsu.com>
From: "Hayato Kuroda (Fujitsu)" <kuroda.hayato@fujitsu.com>
To: 'Amit Kapila' <amit.kapila16@gmail.com>, Masahiko Sawada <sawada.mshk@gmail.com>, Peter Eisentraut <peter@eisentraut.org>
Cc: "Zhijie Hou (Fujitsu)" <houzj.fnst@fujitsu.com>, "pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Date: 2025-06-17T03:21:19Z
Lists: pgsql-hackers
Dear Amit, Sawada, Peter, > > > I wonder if the option name --failover is ideal. To me, it sounds like > > > an action "do a failover!". Also consider that pg_recvlogical has other > > > action options such as --start and --create-slot, so it sounds a bit > > > like those. > > > > Fair point. > > > > > Maybe something like --enable-failover would be better? > > > > Sounds better, but probably the --two-phase option has the same issue? > > > > Ideally, we should change both to maintain consistency across various > slot options. OTOH, as we have already described these options as: " > The --two-phase and --failover options can be specified with > --create-slot.", it is clear that these are slot options. The previous > version docs have a description: "The --two-phase can be specified > with --create-slot to enable decoding of prepared transactions." which > makes it even more clear that the two-phase is a slot option. The > options are named similarly in pg_create_logical_replication_slot API > and during CREATE SUBSCRIPTION, so, to some level, there is a > consistency in naming of these options across all APIs/tools. But, > their usage in a tool like pg_recvlogical could be perceived > differently as well, so it is also okay to consider naming them > differently. Either name is fine for me, but I have a concern for the description. Now the documentation says: ``` -t --two-phase Enables decoding of prepared transactions. This option may only be specified with --create-slot. ``` If we clarify the option is aimed for the slot, should we follow the description in the protocol.sgml? I.e., ``` -t --two-phase the slot supports decoding of two-phase commit. This option may only be specified with --create-slot. ``` Best regards, Hayato Kuroda FUJITSU LIMITED
Commits
-
pg_recvlogical: Rename --two-phase and --failover options.
- 6d12d5a433c9 18.0 landed
-
doc: Fix a typo in pg_recvlogical documentation.
- a13d49014dea 18.0 landed
-
pg_recvlogical: Add --failover option.
- cf2655a9029a 18.0 landed