diff options
author | Michael Paquier <michael@paquier.xyz> | 2024-07-27 07:16:59 +0900 |
---|---|---|
committer | Michael Paquier <michael@paquier.xyz> | 2024-07-27 07:16:59 +0900 |
commit | e367a413b09fece55ce4e08872ce79f328941ddd (patch) | |
tree | 7031d363a2e1cbd5e20c8a385e2ee43b4fe4c254 /src | |
parent | 53b327f83ea2c820b26a9b51f49f498221bc4379 (diff) | |
download | postgresql-e367a413b09fece55ce4e08872ce79f328941ddd.tar.gz postgresql-e367a413b09fece55ce4e08872ce79f328941ddd.zip |
Fix more holes with SLRU code in need of int64 for segment numbers
This is a continuation of 3937cadfd438, taking care of more areas I have
managed to miss previously.
Reported-by: Noah Misch
Reviewed-by: Noah Misch
Discussion: https://postgr.es/m/20240724130059.1f.nmisch@google.com
Backpatch-through: 17
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/access/transam/multixact.c | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/src/backend/access/transam/multixact.c b/src/backend/access/transam/multixact.c index 675affe4f76..c601ff98a14 100644 --- a/src/backend/access/transam/multixact.c +++ b/src/backend/access/transam/multixact.c @@ -3050,7 +3050,8 @@ PerformMembersTruncation(MultiXactOffset oldestOffset, MultiXactOffset newOldest */ while (segment != endsegment) { - elog(DEBUG2, "truncating multixact members segment %x", segment); + elog(DEBUG2, "truncating multixact members segment %llx", + (unsigned long long) segment); SlruDeleteSegment(MultiXactMemberCtl, segment); /* move to next segment, handling wraparound correctly */ @@ -3201,14 +3202,14 @@ TruncateMultiXact(MultiXactId newOldestMulti, Oid newOldestMultiDB) } elog(DEBUG1, "performing multixact truncation: " - "offsets [%u, %u), offsets segments [%x, %x), " - "members [%u, %u), members segments [%x, %x)", + "offsets [%u, %u), offsets segments [%llx, %llx), " + "members [%u, %u), members segments [%llx, %llx)", oldestMulti, newOldestMulti, - MultiXactIdToOffsetSegment(oldestMulti), - MultiXactIdToOffsetSegment(newOldestMulti), + (unsigned long long) MultiXactIdToOffsetSegment(oldestMulti), + (unsigned long long) MultiXactIdToOffsetSegment(newOldestMulti), oldestOffset, newOldestOffset, - MXOffsetToMemberSegment(oldestOffset), - MXOffsetToMemberSegment(newOldestOffset)); + (unsigned long long) MXOffsetToMemberSegment(oldestOffset), + (unsigned long long) MXOffsetToMemberSegment(newOldestOffset)); /* * Do truncation, and the WAL logging of the truncation, in a critical @@ -3461,14 +3462,14 @@ multixact_redo(XLogReaderState *record) SizeOfMultiXactTruncate); elog(DEBUG1, "replaying multixact truncation: " - "offsets [%u, %u), offsets segments [%x, %x), " - "members [%u, %u), members segments [%x, %x)", + "offsets [%u, %u), offsets segments [%llx, %llx), " + "members [%u, %u), members segments [%llx, %llx)", xlrec.startTruncOff, xlrec.endTruncOff, - MultiXactIdToOffsetSegment(xlrec.startTruncOff), - MultiXactIdToOffsetSegment(xlrec.endTruncOff), + (unsigned long long) MultiXactIdToOffsetSegment(xlrec.startTruncOff), + (unsigned long long) MultiXactIdToOffsetSegment(xlrec.endTruncOff), xlrec.startTruncMemb, xlrec.endTruncMemb, - MXOffsetToMemberSegment(xlrec.startTruncMemb), - MXOffsetToMemberSegment(xlrec.endTruncMemb)); + (unsigned long long) MXOffsetToMemberSegment(xlrec.startTruncMemb), + (unsigned long long) MXOffsetToMemberSegment(xlrec.endTruncMemb)); /* should not be required, but more than cheap enough */ LWLockAcquire(MultiXactTruncationLock, LW_EXCLUSIVE); |