Re: Fix obsolete comment in GetSnapshotData

From: Craig Ringer <craig(at)2ndquadrant(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Fix obsolete comment in GetSnapshotData
Date: 2017-04-03 01:29:29
Message-ID: CAMsr+YHB2Tw_=Qjgi5q6Ok8JzBH4kzo3aV8WfDxfOO5RgUUPAA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 31 March 2017 at 21:59, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Wed, Mar 29, 2017 at 12:00 AM, Craig Ringer <craig(at)2ndquadrant(dot)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.

You're right, I muddled it with PROCARRAY_VACUUM_FLAG.

PROCARRAY_FLAGS_VACUUM is sufficient.

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_VACUUM)
* RecentGlobalDataXmin: the global xmin for non-catalog tables
* >= RecentGlobalXmin
*

--
Craig Ringer http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Craig Ringer 2017-04-03 01:34:26 Re: delta relations in AFTER triggers
Previous Message Tom Lane 2017-04-02 23:55:11 Re: Variable substitution in psql backtick expansion