On Thu, Sep 19, 2024 at 12:02 PM Amit Kapila <amit.kapil...@gmail.com> wrote: > > On Tue, Sep 17, 2024 at 9:08 AM shveta malik <shveta.ma...@gmail.com> wrote: > > > > On Mon, Sep 16, 2024 at 4:04 PM Amit Kapila <amit.kapil...@gmail.com> wrote: > > > > > > On Mon, Sep 16, 2024 at 2:55 PM shveta malik <shveta.ma...@gmail.com> > > > wrote: > > > > > > > > On Mon, Sep 16, 2024 at 11:13 AM Amit Kapila <amit.kapil...@gmail.com> > > > > wrote: > > > > > > > > > > > > > > Another question aside from the above point, what if someone has > > > > > specified logical subscribers in synchronous_standby_names? In the > > > > > case of synchronized_standby_slots, we won't proceed with such slots. > > > > > > > > > > > > > Yes, it is a possibility. I have missed this point earlier. Now I > > > > tried a case where I give a mix of logical subscriber and physical > > > > standby in 'synchronous_standby_names' on pgHead, it even takes that > > > > 'mix' configuration and starts waiting accordingly. > > > > > > > > synchronous_standby_names = 'FIRST 2(logicalsub_1, phy_standby_1, > > > > phy_standby_2)'; > > > > > > > > > > This should not happen as we don't support syncing failover slots on > > > logical subscribers. > > > > +1 > > > > > The other point to consider here is that the user > > > may not have set 'sync_replication_slots' on all the physical standbys > > > mentioned in 'synchronous_standby_names' and in that case, it doesn't > > > make sense to wait for WAL to get flushed on those standbys. What do > > > you think? > > > > > > > Yes, it is a possibility. But then it is a possibility in case of > > 'synchronized_standby_slots' as well. User may always configure one of > > the standbys in 'synchronized_standby_slots' while may not configure > > slot-sync GUCs on that standby (hot_standby_feedback, > > sync_replication_slots etc). In such a case, logical replication is > > dependent upon the concerned physical standby even though latter is > > not syncing failover slots. > > > > The difference is that the purpose of 'synchronized_standby_slots' is > to mention slot names for which the user expects logical walsenders to > wait before sending the logical changes to subscribers. OTOH, > 'synchronous_standby_names' has a different purpose as well. It is not > clear to me if the users would be interested in syncing failover slots > to all the standbys mentioned in 'synchronous_standby_names'. >
Okay, I see your point. But not sure what could be the solution here except documenting. But let me think more. thanks Shveta