On Tue, Apr 4, 2023 at 3:14 PM Drouvot, Bertrand <bertranddrouvot...@gmail.com> wrote: >
+static inline bool +LogicalReplicationSlotXidsConflict(ReplicationSlot *s, TransactionId xid) +{ + TransactionId slot_xmin; + TransactionId slot_catalog_xmin; + + slot_xmin = s->data.xmin; + slot_catalog_xmin = s->data.catalog_xmin; + + return (((TransactionIdIsValid(slot_xmin) && TransactionIdPrecedesOrEquals(slot_xmin, xid)) || For logical slots, slot->data.xmin will always be an InvalidTransactionId. It will only be set/updated for physical slots. So, it is not clear to me why in this and other related functions, you are referring to and or invalidating it. -- With Regards, Amit Kapila.