Re: Autovacuum to prevent wraparound tries to consume xid
Alexander Korotkov <a.korotkov@postgrespro.ru>
From: Alexander Korotkov <a.korotkov@postgrespro.ru>
To: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2016-05-19T14:14:31Z
Lists: pgsql-hackers
Attachments
- fix_vac_truncate_clog_xid_consume_2.patch (application/octet-stream) patch
On Mon, Mar 28, 2016 at 2:05 PM, Alexander Korotkov < a.korotkov@postgrespro.ru> wrote: > After some debugging I found that vac_truncate_clog consumes xid just to > produce warning. I wrote simple patch which replaces > GetCurrentTransactionId() with ShmemVariableCache->nextXid. That > completely fixes this situation for me: ShmemVariableCache was successfully > updated. > I found that direct reading of ShmemVariableCache->nextXid is not corrent, it's better to use ReadNewTransactionId() then. Fixed version of patch is attached. ------ Alexander Korotkov Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Commits
-
Avoid repeating loads of frozen ID values.
- dd0183469bb7 17.0 landed
-
Close race condition between datfrozen and relfrozen updates.
- f222349c4ec0 12.19 landed
- 70cadfba0c70 13.15 landed
- 2ca19aa8165c 14.12 landed
- 92685c389d54 16.3 landed
- 7c5915c4b16c 15.7 landed
- f65ab862e3b8 17.0 landed
-
Fetch XIDs atomically during vac_truncate_clog().
- 2d2e40e3befd 9.6.0 cited