Wraparound limits
От | Teodor Sigaev |
---|---|
Тема | Wraparound limits |
Дата | |
Msg-id | 53E35647.3040404@sigaev.ru обсуждение исходный текст |
Ответы |
Re: Wraparound limits
|
Список | pgsql-hackers |
Hi! I have a questions about setting transaction's wraparound limits. Function SetTransactionIdLimit() in access/transam/varsup.c: 1) xidWrapLimit = oldest_datfrozenxid + (MaxTransactionId >> 1); if (xidWrapLimit < FirstNormalTransactionId) xidWrapLimit += FirstNormalTransactionId; Isn't it a problem if oldest_datfrozenxid > MaxTransactionId/2? 2) xidStopLimit = xidWrapLimit - 1000000; if (xidStopLimit < FirstNormalTransactionId) xidStopLimit -= FirstNormalTransactionId; xidWarnLimit = xidStopLimit - 10000000; if (xidWarnLimit < FirstNormalTransactionId) xidWarnLimit -= FirstNormalTransactionId; Why does it use '-' instead of '+' if variable < FirstNormalTransactionId? In this case it is easy to get xidStopLimit > xidWrapLimit or xidWarnLimit > xidStopLimit... Thank you. -- Teodor Sigaev E-mail: teodor@sigaev.ru WWW: http://www.sigaev.ru/
В списке pgsql-hackers по дате отправления: