Hi,
dc7420c2 has removed RecentGlobalXmin, but there are still references
to it in the code, and a set of FIXME references, like this one in
autovacuum.c (three in total):
/*
* Start a transaction so we can access pg_database, and get a snapshot.
* We don't have a use for the snapshot itself, but we're interested in
* the secondary effect that it sets RecentGlobalXmin. (This is critical
* for anything that reads heap pages, because HOT may decide to prune
* them even if the process doesn't attempt to modify any tuples.)
*
* FIXME: This comment is inaccurate / the code buggy. A snapshot that is
* not pushed/active does not reliably prevent HOT pruning (->xmin could
* e.g. be cleared when cache invalidations are processed).
*/
Wouldn't it be better to clean up that?
Thanks,
--
Michael