RE: Disallow changing slot's failover option in transaction block - Mailing list pgsql-hackers

From Hayato Kuroda (Fujitsu)
Subject RE: Disallow changing slot's failover option in transaction block
Date
Msg-id OSBPR01MB255229D89C6D4A298F19E016F5082@OSBPR01MB2552.jpnprd01.prod.outlook.com
Whole thread Raw
In response to Disallow changing slot's failover option in transaction block  ("Zhijie Hou (Fujitsu)" <houzj.fnst@fujitsu.com>)
Responses Re: Disallow changing slot's failover option in transaction block
List pgsql-hackers
Dear Hou,

> Kuroda-San reported an issue off-list that:
>
> If user execute ALTER SUBSCRIPTION SET (failover) command inside a txn block
> and rollback, only the subscription option change can be rolled back, while the
> replication slot's failover change is preserved.
>
> This is because ALTER SUBSCRIPTION SET (failover) command internally
> executes
> the replication command ALTER_REPLICATION_SLOT to change the replication
> slot's
> failover property, but this replication command execution cannot be
> rollback.
>
> To fix it, I think we can prevent user from executing ALTER SUBSCRIPTION set
> (failover) inside a txn block, which is also consistent to the ALTER
> SUBSCRIPTION REFRESH/DROP SUBSCRIPTION command. Attach a small
> patch to address this.

Thanks for posting the patch, the fix is same as my expectation.
Also, should we add the restriction to the doc? I feel [1] can be updated.


[1]:https://www.postgresql.org/docs/devel/sql-altersubscription.html#SQL-ALTERSUBSCRIPTION-PARAMS-SET

Best Regards,
Hayato Kuroda
FUJITSU LIMITED
https://www.fujitsu.com/




pgsql-hackers by date:

Previous
From: Ajin Cherian
Date:
Subject: Re: Slow catchup of 2PC (twophase) transactions on replica in LR
Next
From: Daniel Gustafsson
Date:
Subject: Re: Cutting support for OpenSSL 1.0.1 and 1.0.2 in 17~?