Hi, here are some review comments for patch v1. ====== Commit message
1. ALTER_REPLICATION_SLOT on invalidated replication slots is unnecessary as there is no way... suggestion: ALTER_REPLICATION_SLOT for invalid replication slots should not be allowed because there is no way... ====== 2. Missing docs update Should this docs page [1] be updated to say ALTER_REPLICATION_SLOT is not allowed for invalid slots? ====== src/backend/replication/slot.c 3. + if (MyReplicationSlot->data.invalidated != RS_INVAL_NONE) + ereport(ERROR, + errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE), + errmsg("cannot alter replication slot \"%s\"", name), + errdetail("This replication slot was invalidated due to \"%s\".", + SlotInvalidationCauses[MyReplicationSlot->data.invalidated])); + I thought including the reason "invalid" (e.g. "cannot alter invalid replication slot \"%s\"") in the message might be better, but OTOH I see the patch message is the same as an existing one. Maybe see what others think. ====== src/test/recovery/t/035_standby_logical_decoding.pl 3. There is already a comment about this test: ################################################## # Recovery conflict: Invalidate conflicting slots, including in-use slots # Scenario 1: hot_standby_feedback off and vacuum FULL # # In passing, ensure that replication slot stats are not removed when the # active slot is invalidated. ################################################## IMO we should update that "In passing..." sentence to something like: In passing, ensure that replication slot stats are not removed when the active slot is invalidated, and check that an error occurs when attempting to alter the invalid slot. ====== [1] docs - https://www.postgresql.org/docs/devel/protocol-replication.html Kind Regards, Peter Smith. Fujitsu Austalia