pgsql: Use FullTransactionId for the transaction stack.

From: Thomas Munro <tmunro(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Use FullTransactionId for the transaction stack.
Date: 2019-03-28 05:27:01
Message-ID: E1h9NZ7-0008KK-18@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Use FullTransactionId for the transaction stack.

Provide GetTopFullTransactionId() and GetCurrentFullTransactionId().
The intended users of these interfaces are access methods that use
xids for visibility checks but don't want to have to go back and
"freeze" existing references some time later before the 32 bit xid
counter wraps around.

Use a new struct to serialize the transaction state for parallel
query, because FullTransactionId doesn't fit into the previous
serialization scheme very well.

Author: Thomas Munro
Reviewed-by: Heikki Linnakangas
Discussion: https://postgr.es/m/CAA4eK1%2BMv%2Bmb0HFfWM9Srtc6MVe160WFurXV68iAFMcagRZ0dQ%40mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/ad308058cc8666c50b43179e64d6bb7aeb3ba169

Modified Files
--------------
src/backend/access/transam/varsup.c | 13 +-
src/backend/access/transam/xact.c | 229 ++++++++++++++++++++++++------------
src/include/access/transam.h | 3 +-
src/include/access/xact.h | 5 +
src/tools/pgindent/typedefs.list | 1 +
5 files changed, 170 insertions(+), 81 deletions(-)

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Peter Eisentraut 2019-03-28 08:30:29 pgsql: doc: Fix typo
Previous Message Thomas Munro 2019-03-28 04:34:52 Re: pgsql: Compute XID horizon for page level index vacuum on primary.