On Wed, Mar 29, 2017 at 12:00 AM, Craig Ringer <craig@2ndquadrant.com> wrote:
> There's an outdated reference to GetOldestXmin(true, true) in
> GetSnapshotData. It hasn't had that call signature for a long while
> now. Update the comment to reflect the current signature.
>
> diff --git a/src/backend/storage/ipc/procarray.c
> b/src/backend/storage/ipc/procarray.c
> index f32881b..4bf0243 100644
> --- a/src/backend/storage/ipc/procarray.c
> +++ b/src/backend/storage/ipc/procarray.c
> @@ -1556,7 +1556,8 @@ GetMaxSnapshotSubxidCount(void)
> * older than this are known not running any more.
> * RecentGlobalXmin: the global xmin (oldest TransactionXmin across all
> * running transactions, except those running LAZY VACUUM). This is
> - * the same computation done by GetOldestXmin(true, true).
> + * the same computation done by
> + * GetOldestXmin(NULL, PROCARRAY_FLAGS_DEFAULT|PROCARRAY_FLAGS_VACUUM)
> * RecentGlobalDataXmin: the global xmin for non-catalog tables
> * >= RecentGlobalXmin
> *
PROCARRAY_FLAGS_VACUUM is defined as a bitwise or with
PROCARRAY_FLAGS_DEFAULT. So or-ing it back with that same value does
not seem quite right.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company