File tree 4 files changed +13
-8
lines changed
4 files changed +13
-8
lines changed Original file line number Diff line number Diff line change 9
9
*
10
10
*
11
11
* IDENTIFICATION
12
- * $Header: /cvsroot/pgsql/src/backend/access/nbtree/nbtpage.c,v 1.62 2003/02/23 22:43:08 tgl Exp $
12
+ * $Header: /cvsroot/pgsql/src/backend/access/nbtree/nbtpage.c,v 1.63 2003/02/23 23:20:52 tgl Exp $
13
13
*
14
14
* NOTES
15
15
* Postgres btree pages look like ordinary relation pages. The opaque
@@ -544,7 +544,7 @@ _bt_page_recyclable(Page page)
544
544
*/
545
545
opaque = (BTPageOpaque ) PageGetSpecialPointer (page );
546
546
if (P_ISDELETED (opaque ) &&
547
- TransactionIdPrecedesOrEquals (opaque -> btpo .xact , RecentGlobalXmin ))
547
+ TransactionIdPrecedesOrEquals (opaque -> btpo .xact , RecentXmin ))
548
548
return true;
549
549
return false;
550
550
}
Original file line number Diff line number Diff line change 8
8
*
9
9
*
10
10
* IDENTIFICATION
11
- * $Header: /cvsroot/pgsql/src/backend/storage/ipc/sinval.c,v 1.53 2002/11/21 06:36:08 tgl Exp $
11
+ * $Header: /cvsroot/pgsql/src/backend/storage/ipc/sinval.c,v 1.54 2003/02/23 23:20:52 tgl Exp $
12
12
*
13
13
*-------------------------------------------------------------------------
14
14
*/
@@ -298,9 +298,10 @@ GetOldestXmin(bool allDbs)
298
298
* This ensures that the set of transactions seen as "running" by the
299
299
* current xact will not change after it takes the snapshot.
300
300
*
301
- * Also, we compute the current global xmin (oldest xmin across all running
301
+ * We also compute the current global xmin (oldest xmin across all running
302
302
* transactions) and save it in RecentGlobalXmin. This is the same
303
- * computation done by GetOldestXmin(TRUE).
303
+ * computation done by GetOldestXmin(TRUE). The xmin value is also stored
304
+ * into RecentXmin.
304
305
*----------
305
306
*/
306
307
Snapshot
@@ -419,7 +420,9 @@ GetSnapshotData(bool serializable)
419
420
if (TransactionIdPrecedes (xmin , globalxmin ))
420
421
globalxmin = xmin ;
421
422
423
+ /* Update globals for use by VACUUM */
422
424
RecentGlobalXmin = globalxmin ;
425
+ RecentXmin = xmin ;
423
426
424
427
snapshot -> xmin = xmin ;
425
428
snapshot -> xmax = xmax ;
Original file line number Diff line number Diff line change 16
16
* Portions Copyright (c) 1994, Regents of the University of California
17
17
*
18
18
* IDENTIFICATION
19
- * $Header: /cvsroot/pgsql/src/backend/utils/time/tqual.c,v 1.61 2002/10/08 17:17:19 tgl Exp $
19
+ * $Header: /cvsroot/pgsql/src/backend/utils/time/tqual.c,v 1.62 2003/02/23 23:20:52 tgl Exp $
20
20
*
21
21
*-------------------------------------------------------------------------
22
22
*/
@@ -33,7 +33,8 @@ Snapshot SnapshotDirty = &SnapshotDirtyData;
33
33
Snapshot QuerySnapshot = NULL ;
34
34
Snapshot SerializableSnapshot = NULL ;
35
35
36
- /* This is updated by GetSnapshotData: */
36
+ /* These are updated by GetSnapshotData: */
37
+ TransactionId RecentXmin = InvalidTransactionId ;
37
38
TransactionId RecentGlobalXmin = InvalidTransactionId ;
38
39
39
40
bool ReferentialIntegritySnapshotOverride = false;
Original file line number Diff line number Diff line change 8
8
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
9
9
* Portions Copyright (c) 1994, Regents of the University of California
10
10
*
11
- * $Id: tqual.h,v 1.43 2002/09/04 20:31:46 momjian Exp $
11
+ * $Id: tqual.h,v 1.44 2003/02/23 23: 20:52 tgl Exp $
12
12
*
13
13
*-------------------------------------------------------------------------
14
14
*/
@@ -41,6 +41,7 @@ extern DLLIMPORT Snapshot SnapshotDirty;
41
41
extern DLLIMPORT Snapshot QuerySnapshot ;
42
42
extern DLLIMPORT Snapshot SerializableSnapshot ;
43
43
44
+ extern TransactionId RecentXmin ;
44
45
extern TransactionId RecentGlobalXmin ;
45
46
46
47
extern bool ReferentialIntegritySnapshotOverride ;
You can’t perform that action at this time.
0 commit comments