pgsql: Handle duplicate XIDs in txid_snapshot. - Mailing list pgsql-committers

From Heikki Linnakangas
Subject pgsql: Handle duplicate XIDs in txid_snapshot.
Date
Msg-id E1Wkxeo-0005kg-3x@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Handle duplicate XIDs in txid_snapshot.

The proc array can contain duplicate XIDs, when a transaction is just being
prepared for two-phase commit. To cope, remove any duplicates in
txid_current_snapshot(). Also ignore duplicates in the input functions, so
that if e.g. you have an old pg_dump file that already contains duplicates,
it will be accepted.

Report and fix by Jan Wieck. Backpatch to all supported versions.

Branch
------
REL9_2_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/479a36f23479417eb50b4eac74c0c0e1ce9cd7ee

Modified Files
--------------
src/backend/utils/adt/txid.c       |   59 ++++++++++++++++++++++++++++--------
src/test/regress/expected/txid.out |   10 +++---
src/test/regress/sql/txid.sql      |    2 +-
3 files changed, 54 insertions(+), 17 deletions(-)


pgsql-committers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: pgsql: Handle duplicate XIDs in txid_snapshot.
Next
From: Heikki Linnakangas
Date:
Subject: pgsql: Handle duplicate XIDs in txid_snapshot.