v3-0001-Make-next-multixact-sleep-timed-with-debug-loggin.patch
application/octet-stream
Filename: v3-0001-Make-next-multixact-sleep-timed-with-debug-loggin.patch
Type: application/octet-stream
Part: 0
Patch
Same data as JSON:
GET /api/v1/attachments/:id/patch
the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes.
API reference →
Format: format-patch
Series: patch v3-0001
Subject: Make next multixact sleep timed with debug logging
| File | + | − |
|---|---|---|
| src/backend/access/transam/multixact.c | 5 | 2 |
From c7b9a8f3904840a111e57fb6066c7169df0f40b3 Mon Sep 17 00:00:00 2001
From: Andrey Borodin <amborodin@acm.org>
Date: Wed, 25 Jun 2025 14:34:06 +0500
Subject: [PATCH v3 1/2] Make next multixact sleep timed with debug logging
---
src/backend/access/transam/multixact.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/backend/access/transam/multixact.c b/src/backend/access/transam/multixact.c
index b7b47ef076a..b06324ea27a 100644
--- a/src/backend/access/transam/multixact.c
+++ b/src/backend/access/transam/multixact.c
@@ -1480,8 +1480,11 @@ retry:
LWLockRelease(lock);
CHECK_FOR_INTERRUPTS();
- ConditionVariableSleep(&MultiXactState->nextoff_cv,
- WAIT_EVENT_MULTIXACT_CREATION);
+ if (ConditionVariableTimedSleep(&MultiXactState->nextoff_cv, 1000,
+ WAIT_EVENT_MULTIXACT_CREATION))
+ {
+ elog(WARNING, "Timed out: nextMXact %u tmpMXact %u", nextMXact, tmpMXact);
+ }
slept = true;
goto retry;
}
--
2.39.5 (Apple Git-154)