pgsql: Improve underdocumented btree_xlog_delete_get_latestRemovedXid()

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Improve underdocumented btree_xlog_delete_get_latestRemovedXid()
Дата
Msg-id E1SxNkb-0004Fo-4J@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Improve underdocumented btree_xlog_delete_get_latestRemovedXid() code.

As noted by Noah Misch, btree_xlog_delete_get_latestRemovedXid is
critically dependent on the assumption that it's examining a consistent
state of the database.  This was undocumented though, so the
seemingly-unrelated check for no active HS sessions might be thought to be
merely an optional optimization.  Improve comments, and add an explicit
check of reachedConsistency just to be sure.

This function returns InvalidTransactionId (thereby killing all HS
transactions) in several cases that are not nearly unlikely enough for my
taste.  This commit doesn't attempt to fix those deficiencies, just
document them.

Back-patch to 9.2, not from any real functional need but just to keep the
branches more closely synced to simplify possible future back-patching.

Branch
------
REL9_2_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/11de73b25dbeea012ae61e8f1dcf939f6b737286

Modified Files
--------------
src/backend/access/nbtree/nbtxlog.c |   41 ++++++++++++++++++++++++++--------
1 files changed, 31 insertions(+), 10 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: In SPGiST replay, do conflict resolution before modifying the pa
Следующее
От: Bruce Momjian
Дата:
Сообщение: pgsql: Add link to synchronous_commit variables in high availability do