Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitc9e2457

Browse files
committed
Fix more holes with SLRU code in need of int64 for segment numbers
This is a continuation of3937cad, taking care of more areas I havemanaged to miss previously.Reported-by: Noah MischReviewed-by: Noah MischDiscussion:https://postgr.es/m/20240724130059.1f.nmisch@google.comBackpatch-through: 17
1 parent0dcaea5 commitc9e2457

File tree

1 file changed

+14
-13
lines changed

1 file changed

+14
-13
lines changed

‎src/backend/access/transam/multixact.c

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3050,7 +3050,8 @@ PerformMembersTruncation(MultiXactOffset oldestOffset, MultiXactOffset newOldest
30503050
*/
30513051
while (segment!=endsegment)
30523052
{
3053-
elog(DEBUG2,"truncating multixact members segment %x",segment);
3053+
elog(DEBUG2,"truncating multixact members segment %llx",
3054+
(unsigned long long)segment);
30543055
SlruDeleteSegment(MultiXactMemberCtl,segment);
30553056

30563057
/* move to next segment, handling wraparound correctly */
@@ -3201,14 +3202,14 @@ TruncateMultiXact(MultiXactId newOldestMulti, Oid newOldestMultiDB)
32013202
}
32023203

32033204
elog(DEBUG1,"performing multixact truncation: "
3204-
"offsets [%u, %u), offsets segments [%x, %x), "
3205-
"members [%u, %u), members segments [%x, %x)",
3205+
"offsets [%u, %u), offsets segments [%llx, %llx), "
3206+
"members [%u, %u), members segments [%llx, %llx)",
32063207
oldestMulti,newOldestMulti,
3207-
MultiXactIdToOffsetSegment(oldestMulti),
3208-
MultiXactIdToOffsetSegment(newOldestMulti),
3208+
(unsigned long long)MultiXactIdToOffsetSegment(oldestMulti),
3209+
(unsigned long long)MultiXactIdToOffsetSegment(newOldestMulti),
32093210
oldestOffset,newOldestOffset,
3210-
MXOffsetToMemberSegment(oldestOffset),
3211-
MXOffsetToMemberSegment(newOldestOffset));
3211+
(unsigned long long)MXOffsetToMemberSegment(oldestOffset),
3212+
(unsigned long long)MXOffsetToMemberSegment(newOldestOffset));
32123213

32133214
/*
32143215
* Do truncation, and the WAL logging of the truncation, in a critical
@@ -3461,14 +3462,14 @@ multixact_redo(XLogReaderState *record)
34613462
SizeOfMultiXactTruncate);
34623463

34633464
elog(DEBUG1,"replaying multixact truncation: "
3464-
"offsets [%u, %u), offsets segments [%x, %x), "
3465-
"members [%u, %u), members segments [%x, %x)",
3465+
"offsets [%u, %u), offsets segments [%llx, %llx), "
3466+
"members [%u, %u), members segments [%llx, %llx)",
34663467
xlrec.startTruncOff,xlrec.endTruncOff,
3467-
MultiXactIdToOffsetSegment(xlrec.startTruncOff),
3468-
MultiXactIdToOffsetSegment(xlrec.endTruncOff),
3468+
(unsigned long long)MultiXactIdToOffsetSegment(xlrec.startTruncOff),
3469+
(unsigned long long)MultiXactIdToOffsetSegment(xlrec.endTruncOff),
34693470
xlrec.startTruncMemb,xlrec.endTruncMemb,
3470-
MXOffsetToMemberSegment(xlrec.startTruncMemb),
3471-
MXOffsetToMemberSegment(xlrec.endTruncMemb));
3471+
(unsigned long long)MXOffsetToMemberSegment(xlrec.startTruncMemb),
3472+
(unsigned long long)MXOffsetToMemberSegment(xlrec.endTruncMemb));
34723473

34733474
/* should not be required, but more than cheap enough */
34743475
LWLockAcquire(MultiXactTruncationLock,LW_EXCLUSIVE);

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp