Re: BUG #16643: PG13 - Logical replication - initial startup never finishes and gets stuck in startup loop
| От | Alvaro Herrera |
|---|---|
| Тема | Re: BUG #16643: PG13 - Logical replication - initial startup never finishes and gets stuck in startup loop |
| Дата | |
| Msg-id | 20201104134931.GA6515@alvherre.pgsql обсуждение исходный текст |
| Ответ на | Re: BUG #16643: PG13 - Logical replication - initial startup never finishes and gets stuck in startup loop (Amit Kapila <amit.kapila16@gmail.com>) |
| Ответы |
Re: BUG #16643: PG13 - Logical replication - initial startup never finishes and gets stuck in startup loop
Re: BUG #16643: PG13 - Logical replication - initial startup never finishes and gets stuck in startup loop |
| Список | pgsql-bugs |
On 2020-Nov-04, Amit Kapila wrote: > On Thu, Oct 15, 2020 at 8:20 PM Alvaro Herrera <alvherre@alvh.no-ip.org> wrote: > > * STREAM COMMIT bug? > > In apply_handle_stream_commit, we do CommitTransactionCommand, but > > apparently in a tablesync worker we shouldn't do it. > > In the tablesync stage, we don't allow streaming. See pgoutput_startup > where we disable streaming for the init phase. As far as I understand, > for tablesync we create the initial slot during which streaming will > be disabled then we will copy the table (here logical decoding won't > be used) and then allow the apply worker to get any other data which > is inserted in the meantime. Now, I might be missing something here > but if you can explain it a bit more or share some test to show how we > can reach here via tablesync worker then we can discuss the possible > solution. Hmm, okay, that sounds like there would be no bug then. Maybe what we need is just an assert in apply_handle_stream_commit that !am_tablesync_worker(), as in the attached patch. Passes tests.
Вложения
В списке pgsql-bugs по дате отправления: