Re: Minimal logical decoding on standbys
От | Drouvot, Bertrand |
---|---|
Тема | Re: Minimal logical decoding on standbys |
Дата | |
Msg-id | af8a1fa2-c039-3c76-3614-d0ecb7767df5@gmail.com обсуждение исходный текст |
Ответ на | Re: Minimal logical decoding on standbys (Masahiko Sawada <sawada.mshk@gmail.com>) |
Список | pgsql-hackers |
Hi, On 4/4/23 9:48 AM, Masahiko Sawada wrote: > On Tue, Apr 4, 2023 at 10:55 AM Masahiko Sawada <sawada.mshk@gmail.com> wrote: >> >> >> Regarding 0004 patch: >> >> @@ -2626,6 +2626,12 @@ InitWalSenderSlot(void) >> walsnd->sync_standby_priority = 0; >> walsnd->latch = &MyProc->procLatch; >> walsnd->replyTime = 0; >> + >> + if (MyDatabaseId == InvalidOid) >> + walsnd->kind = REPLICATION_KIND_PHYSICAL; >> + else >> + walsnd->kind = REPLICATION_KIND_LOGICAL; >> + >> >> I think we might want to set the replication kind when processing the >> START_REPLICATION command. The walsender using a logical replication >> slot is not necessarily streaming (e.g. when COPYing table data). >> > > Discussing with Bertrand off-list, it's wrong as the logical > replication slot creation also needs to read WAL records so a > walsender who is creating a logical replication slot needs to be woken > up. We can set it the replication kind when processing > START_REPLICATION and CREATE_REPLICATION_SLOT, but it seems better to > set it in one place. So I agree to set it in InitWalSenderSlot(). > Thanks for the review and feedback! Added a comment in 0004 in V58 just posted up-thread to explain the reason why the walsnd->kind assignment is done InitWalSenderSlot(). Regards, -- Bertrand Drouvot PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com
В списке pgsql-hackers по дате отправления: