Dear Amit,
Thanks for giving comments! Here I wanted to reply one of comments.
> What should be the behavior if one tries to set slot_name to NONE and
> also tries to toggle two_pahse option?
You mentioned like below case, right?
```
ALTER SUBSCRIPTION sub SET (two_phase = false, slot_name = NONE);
```
For now, we accept such a command. The replication slot which previously specified
is altered. As you know, this behavior is same as failover's one.
> I feel both options together
> don't makes sense because there is no use in changing two_phase for
> some slot which we are disassociating the subscription from. The same
> could be said for the failover option as well, so if we agree with
> some different behavior here, we can follow the same for failover
> option as well.
While considering more, I started to think the combination of slot_name and
two_phase should not be allowed. Even if both of them are altered at the same time,
the *old* slot will be modified by the backend process. I feel this inconsistency
should not be happened. In next patch, this check will be added. I also think
failover option should be also fixed, but not touched here. Let's make the scope
narrower.
Best Regards,
Hayato Kuroda
FUJITSU LIMITED
https://www.fujitsu.com/