|
|
|
|
@ -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) |
|
|
|
|
|