From 254c63e9eda0b006fb61b9dc23970a6381efd061 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Wed, 8 Dec 2021 09:27:15 +0100 Subject: [PATCH] pgrowlocks: Fix incorrect format placeholders Transaction IDs should be printed as unsigned, similar to xidout(). --- contrib/pgrowlocks/pgrowlocks.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/contrib/pgrowlocks/pgrowlocks.c b/contrib/pgrowlocks/pgrowlocks.c index 669a7d7730..d8946dc510 100644 --- a/contrib/pgrowlocks/pgrowlocks.c +++ b/contrib/pgrowlocks/pgrowlocks.c @@ -168,7 +168,7 @@ pgrowlocks(PG_FUNCTION_ARGS) PointerGetDatum(&tuple->t_self)); values[Atnum_xmax] = palloc(NCHARS * sizeof(char)); - snprintf(values[Atnum_xmax], NCHARS, "%d", xmax); + snprintf(values[Atnum_xmax], NCHARS, "%u", xmax); if (infomask & HEAP_XMAX_IS_MULTI) { MultiXactMember *members; @@ -209,7 +209,7 @@ pgrowlocks(PG_FUNCTION_ARGS) strcat(values[Atnum_modes], ","); strcat(values[Atnum_pids], ","); } - snprintf(buf, NCHARS, "%d", members[j].xid); + snprintf(buf, NCHARS, "%u", members[j].xid); strcat(values[Atnum_xids], buf); switch (members[j].status) { @@ -250,7 +250,7 @@ pgrowlocks(PG_FUNCTION_ARGS) values[Atnum_ismulti] = pstrdup("false"); values[Atnum_xids] = palloc(NCHARS * sizeof(char)); - snprintf(values[Atnum_xids], NCHARS, "{%d}", xmax); + snprintf(values[Atnum_xids], NCHARS, "{%u}", xmax); values[Atnum_modes] = palloc(NCHARS); if (infomask & HEAP_XMAX_LOCK_ONLY)