On Mon, Mar 25, 2024 at 10:33 AM shveta malik <shveta.ma...@gmail.com> wrote: > > On Sun, Mar 24, 2024 at 3:06 PM Bharath Rupireddy > <bharath.rupireddyforpostg...@gmail.com> wrote: > > > > I've attached the v18 patch set here. >
I have a question. Don't we allow creating subscriptions on an existing slot with a non-null 'inactive_timeout' set where 'inactive_timeout' of the slot is retained even after subscription creation? I tried this: =================== --On publisher, create slot with 120sec inactive_timeout: SELECT * FROM pg_create_logical_replication_slot('logical_slot1', 'pgoutput', false, true, true, 120); --On subscriber, create sub using logical_slot1 create subscription mysubnew1_1 connection 'dbname=newdb1 host=localhost user=shveta port=5433' publication mypubnew1_1 WITH (failover = true, create_slot=false, slot_name='logical_slot1'); --Before creating sub, pg_replication_slots output: slot_name | failover | synced | active | temp | conf | lat | inactive_timeout ---------------+----------+--------+--------+------+------+----------------------------------+------------------ logical_slot1 | t | f | f | f | f | 2024-03-25 11:11:55.375736+05:30 | 120 --After creating sub pg_replication_slots output: (inactive_timeout is 0 now): slot_name |failover | synced | active | temp | conf | | lat | inactive_timeout ---------------+---------+--------+--------+------+------+-+-----+------------------ logical_slot1 |t | f | t | f | f | | | 0 =================== In CreateSubscription, we call 'walrcv_alter_slot()' / 'ReplicationSlotAlter()' when create_slot is false. This call ends up setting active_timeout from 120sec to 0. Is it intentional? thanks Shveta