Re: BUG #18280: logical decoding build wrong snapshot for subtransactions

Поиск
Список
Период
Сортировка
От feichanghong
Тема Re: BUG #18280: logical decoding build wrong snapshot for subtransactions
Дата
Msg-id tencent_723A813F904CD8386E1078951ADEED326409@qq.com
обсуждение исходный текст
Ответ на Re: BUG #18280: logical decoding build wrong snapshot for subtransactions  (Amit Kapila <amit.kapila16@gmail.com>)
Список pgsql-bugs
Thank you for your attention.

On Jan 23, 2024, at 19:42, Amit Kapila <amit.kapila16@gmail.com> wrote:

On Wed, Jan 10, 2024 at 7:56 PM feichanghong <feichanghong@qq.com> wrote:

SnapBuildXidSetCatalogChanges (introduced in 272248a) skipping the check for
the sub-transactions when the parent transaction has been marked as
containing catalog changes should be the root cause of the problem.

My fix is to remove the ReorderBufferXidHasCatalogChanges condition from the SnapBuildXidSetCatalogChanges function. This approach has a false positive; the subtransactions that didn't change catalog to the snapshot are also added to the commit list. But that won't be a problem since we use snapshot built during decoding only to read system catalogs, as 272248a's commit message says.


Thanks, your analysis sounds correct to me. BTW, I think this should
occur only in 15 and 14 because in prior branches we didn't check if
the xact has catalog changes before marking its subxacts. From 16
onwards, we already accurately serialize the xacts and subxacts that
have made any catalog changes, so this problem shouldn't be there. Can
you please once verify the same?

Yes, I verified versions 11 to 16 one by one, and this problem only occurs
in 14 and 15.

Best Regards,
Fei Changhong
Alibaba Cloud Computing Ltd.

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Amit Kapila
Дата:
Сообщение: Re: BUG #18280: logical decoding build wrong snapshot for subtransactions
Следующее
От: "Hayato Kuroda (Fujitsu)"
Дата:
Сообщение: RE: BUG #18280: logical decoding build wrong snapshot for subtransactions