Обсуждение: pgsql: Fix commit_ts for FrozenXid and BootstrapXid

Поиск
Список
Период
Сортировка

pgsql: Fix commit_ts for FrozenXid and BootstrapXid

От
Alvaro Herrera
Дата:
Fix commit_ts for FrozenXid and BootstrapXid

Previously, requesting commit timestamp for transactions
FrozenTransactionId and BootstrapTransactionId resulted in an error.
But since those values can validly appear in committed tuples' Xmin,
this behavior is unhelpful and error prone: each caller would have to
special-case those values before requesting timestamp data for an Xid.
We already have a perfectly good interface for returning "the Xid you
requested is too old for us to have commit TS data for it", so let's use
that instead.

Backpatch to 9.5, where commit timestamps appeared.

Author: Craig Ringer
Discussion: https://www.postgresql.org/message-id/CAMsr+YFM5Q=+ry3mKvWEqRTxrB0iU3qUSRnS28nz6FJYtBwhJg@mail.gmail.com

Branch
------
REL9_5_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/7816d13563b74379c9db618e46883c6db5fc0680

Modified Files
--------------
src/backend/access/transam/commit_ts.c                     | 11 +++++++++--
src/test/modules/commit_ts/expected/commit_timestamp.out   | 12 ++++++++++--
src/test/modules/commit_ts/expected/commit_timestamp_1.out | 12 ++++++++++--
3 files changed, 29 insertions(+), 6 deletions(-)