Re: Fix for consume_xids advancing XIDs incorrectly
От | Fujii Masao |
---|---|
Тема | Re: Fix for consume_xids advancing XIDs incorrectly |
Дата | |
Msg-id | da321d89-bc8b-4e6a-8ea6-248cf5ed4a50@oss.nttdata.com обсуждение исходный текст |
Ответ на | Re: Fix for consume_xids advancing XIDs incorrectly (Yushi Ogiwara <btogiwarayuushi@oss.nttdata.com>) |
Список | pgsql-hackers |
On 2024/10/29 18:00, Yushi Ogiwara wrote: >>> >>> >>> consumed = XidSkip(nextXid); >>> if (consumed > 0) >>> TransamVariables->nextXid.value += (uint64) consumed; >>> >>> BTW, the code snippet above in consume_xids_shortcut() could potentially set >>> the next XID to a value below FirstNormalTransactionId? If yes, we should account for >>> FirstNormalFullTransactionId when increasing the next XID, similar to >>> how FullTransactionIdAdvance() handles it. >> >> Good catch. I agree with you. We need to do something similar to what >> FullTransactionIdAdvance() does so that it does not appear as a >> special 32-bit XID. >> >> Regards, > > I think this is not the case since XidSkip returns min(UINT32_MAX - 5 - low, *), which prevents the wrap-around of nextXid. Yes, you're right. Thanks for the correction! Regards, -- Fujii Masao Advanced Computing Technology Center Research and Development Headquarters NTT DATA CORPORATION
В списке pgsql-hackers по дате отправления: