Re: Fix for consume_xids advancing XIDs incorrectly
От | Yushi Ogiwara |
---|---|
Тема | Re: Fix for consume_xids advancing XIDs incorrectly |
Дата | |
Msg-id | 710b46d68d053eac91c9c8ec9feea09d@oss.nttdata.com обсуждение исходный текст |
Ответ на | Re: Fix for consume_xids advancing XIDs incorrectly (Masahiko Sawada <sawada.mshk@gmail.com>) |
Ответы |
Re: Fix for consume_xids advancing XIDs incorrectly
|
Список | pgsql-hackers |
>> >> >> 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. Regards, Yushi Ogiwara
В списке pgsql-hackers по дате отправления: