回复:Fix missing initialization of delayChkptEnd

Поиск
Список
Период
Сортировка
От 蔡梦娟(玊于)
Тема 回复:Fix missing initialization of delayChkptEnd
Дата
Msg-id 54883563-12a6-4cc7-acb7-66773bf96f95.mengjuan.cmj@alibaba-inc.com
обсуждение исходный текст
Ответ на Fix missing initialization of delayChkptEnd  ("蔡梦娟(玊于)" <mengjuan.cmj@alibaba-inc.com>)
Ответы Re: 回复:Fix missing initialization of delayChkptEnd  (Kyotaro Horiguchi <horikyota.ntt@gmail.com>)
Список pgsql-hackers
Hi, all. I updated the patch for this bugfix, the previous one missed the modification of function InitAuxiliaryProcess, please check the new patch.

Thanks & Best Regard


------------------------------------------------------------------
发件人:蔡梦娟(玊于) <mengjuan.cmj@alibaba-inc.com>
发送时间:2023年6月5日(星期一) 19:44
收件人:pgsql-hackers <pgsql-hackers@lists.postgresql.org>
抄 送:robertmhaas <robertmhaas@gmail.com>
主 题:Fix missing initialization of delayChkptEnd

Hi, all
I got a coredump when testing with the REL_14_STABLE branch, which is as below:
I noticed that in commit 10520f4346876aad4941797c2255a21bdac74739, int delayChkpt has been changed back to bool delayChkpt + bool delayChkptEnd. However,  the initialization to delayChkptEnd is missed in function InitProcess. When autovacuum_proc1 is in RelationTruncate, the delayChkptEnd will be set as true. If autovacuum_proc1 receives a cancel signal and handles it at this time, autovacuum_proc1 will exit without reseting delayChkptEnd in its error handling process. After that, if autovacuum_proc2 reuses this PGPROC structure, the above error will occur.

I add a patch to fix this bug in the attachment,  hope you can check it.

Thanks & Best Regard

Вложения

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

Предыдущее
От: Jeff Davis
Дата:
Сообщение: Re: pg_collation.collversion for C.UTF-8
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: Let's make PostgreSQL multi-threaded