mirror of
https://github.com/postgres/postgres.git
synced 2025-11-04 20:11:56 +03:00
Use more consistently int64 for page numbers in SLRU-related code
clog.c, async.c and predicate.c included some SLRU page numbers still
handled as 4-byte integers, while int64 should be used for this purpose.
These holes have been introduced in 4ed8f0913b, that has introduced
the use of 8-byte integers for SLRU page numbers, still forgot about the
code paths updated by this commit.
Reported-by: Noah Misch
Author: Aleksander Alekseev, Michael Paquier
Discussion: https://postgr.es/m/20240626002747.dc.nmisch@google.com
Backpatch-through: 17
This commit is contained in:
@@ -445,7 +445,7 @@ TransactionGroupUpdateXidStatus(TransactionId xid, XidStatus status,
|
||||
PGPROC *proc = MyProc;
|
||||
uint32 nextidx;
|
||||
uint32 wakeidx;
|
||||
int prevpageno;
|
||||
int64 prevpageno;
|
||||
LWLock *prevlock = NULL;
|
||||
|
||||
/* We should definitely have an XID whose status needs to be updated. */
|
||||
@@ -577,7 +577,7 @@ TransactionGroupUpdateXidStatus(TransactionId xid, XidStatus status,
|
||||
while (nextidx != INVALID_PROC_NUMBER)
|
||||
{
|
||||
PGPROC *nextproc = &ProcGlobal->allProcs[nextidx];
|
||||
int thispageno = nextproc->clogGroupMemberPage;
|
||||
int64 thispageno = nextproc->clogGroupMemberPage;
|
||||
|
||||
/*
|
||||
* If the page to update belongs to a different bank than the previous
|
||||
|
||||
Reference in New Issue
Block a user