1
0
mirror of https://github.com/postgres/postgres.git synced 2025-09-03 15:22:11 +03:00

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
This commit is contained in:
Thomas Munro
2019-03-28 10:59:19 +13:00
parent 2fc7af5e96
commit ad308058cc
5 changed files with 170 additions and 81 deletions

View File

@@ -2107,6 +2107,7 @@ SeqTableData
SerCommitSeqNo
SerializedReindexState
SerializedSnapshotData
SerializedTransactionState
Session
SessionBackupState
SetConstraintState