• Tom Lane's avatar
    Improve underdocumented btree_xlog_delete_get_latestRemovedXid() code. · f786e91a
    Tom Lane authored
    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.
    f786e91a
nbtxlog.c 35.7 KB