pgsql: Ignore nextOid when replaying an ONLINE checkpoint.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Ignore nextOid when replaying an ONLINE checkpoint.
Дата
Msg-id E1f6Ny8-0004Tz-20@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Ignore nextOid when replaying an ONLINE checkpoint.

The nextOid value is from the start of the checkpoint and may well be stale
compared to values from more recent XLOG_NEXTOID records.  Previously, we
adopted it anyway, allowing the OID counter to go backwards during a crash.
While this should be harmless, it contributed to the severity of the bug
fixed in commit 0408e1ed5, by allowing duplicate TOAST OIDs to be assigned
immediately following a crash.  Without this error, that issue would only
have arisen when TOAST objects just younger than a multiple of 2^32 OIDs
were deleted and then not vacuumed in time to avoid a conflict.

Pavan Deolasee

Discussion: https://postgr.es/m/CABOikdOgWT2hHkYG3Wwo2cyZJq2zfs1FH0FgX-=h4OLosXHf9w@mail.gmail.com

Branch
------
REL_10_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/08e6cda1c536d22682e8a67e1e49202ae48ef015

Modified Files
--------------
src/backend/access/transam/xlog.c | 19 ++++++++++++++-----
1 file changed, 14 insertions(+), 5 deletions(-)


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Do not select new object OIDs that match recently-dead entries.
Следующее
От: Alvaro Herrera
Дата:
Сообщение: pgsql: Set relispartition correctly for index partitions