From bdf6b6a573e6409e1a0ed7201b2f9c0c19a5f332 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 30 Aug 2010 17:30:49 +0000 Subject: [PATCH] Cosmetic fixes for KnownAssignedXidsGetOldestXmin, per Fujii Masao. --- src/backend/storage/ipc/procarray.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/backend/storage/ipc/procarray.c b/src/backend/storage/ipc/procarray.c index 40a6e2ae58..db6043c674 100644 --- a/src/backend/storage/ipc/procarray.c +++ b/src/backend/storage/ipc/procarray.c @@ -37,7 +37,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/storage/ipc/procarray.c,v 1.72.2.2 2010/08/30 15:20:31 sriggs Exp $ + * $PostgreSQL: pgsql/src/backend/storage/ipc/procarray.c,v 1.72.2.3 2010/08/30 17:30:49 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -156,7 +156,7 @@ static int KnownAssignedXidsGet(TransactionId *xarray, TransactionId xmax); static int KnownAssignedXidsGetAndSetXmin(TransactionId *xarray, TransactionId *xmin, TransactionId xmax); -static int KnownAssignedXidsGetOldestXmin(void); +static TransactionId KnownAssignedXidsGetOldestXmin(void); static void KnownAssignedXidsDisplay(int trace_level); /* @@ -564,7 +564,7 @@ ProcArrayApplyRecoveryInfo(RunningTransactions running) /* * Now we have a copy of any KnownAssignedXids we can zero the array - * before we re-insertion of combined snapshot. + * before we re-insert combined snapshot. */ KnownAssignedXidsRemovePreceding(InvalidTransactionId); @@ -1120,6 +1120,7 @@ GetOldestXmin(bool allDbs, bool ignoreVacuum) * older than the main procarray. */ TransactionId kaxmin = KnownAssignedXidsGetOldestXmin(); + if (TransactionIdIsNormal(kaxmin) && TransactionIdPrecedes(kaxmin, result)) result = kaxmin; @@ -3028,7 +3029,11 @@ KnownAssignedXidsGetAndSetXmin(TransactionId *xarray, TransactionId *xmin, return count; } -static int +/* + * Get oldest XID in the KnownAssignedXids array, or InvalidTransactionId + * if nothing there. + */ +static TransactionId KnownAssignedXidsGetOldestXmin(void) { /* use volatile pointer to prevent code rearrangement */ -- 2.40.0