1
0
mirror of https://github.com/postgres/postgres.git synced 2025-04-21 12:05:57 +03:00

pgrowlocks: fix bogus lock strength output

Per report from digoal@126.com
This commit is contained in:
Alvaro Herrera 2013-01-31 19:11:34 -03:00
parent a11e15c7b6
commit 77a3082fc5

View File

@ -247,7 +247,12 @@ pgrowlocks(PG_FUNCTION_ARGS)
else if (HEAP_XMAX_IS_KEYSHR_LOCKED(infomask)) else if (HEAP_XMAX_IS_KEYSHR_LOCKED(infomask))
snprintf(values[Atnum_modes], NCHARS, "{For Key Share}"); snprintf(values[Atnum_modes], NCHARS, "{For Key Share}");
else if (HEAP_XMAX_IS_EXCL_LOCKED(infomask)) else if (HEAP_XMAX_IS_EXCL_LOCKED(infomask))
snprintf(values[Atnum_modes], NCHARS, "{For Update}"); {
if (tuple->t_data->t_infomask2 & HEAP_KEYS_UPDATED)
snprintf(values[Atnum_modes], NCHARS, "{For Update}");
else
snprintf(values[Atnum_modes], NCHARS, "{For No Key Update}");
}
else else
/* neither keyshare nor exclusive bit it set */ /* neither keyshare nor exclusive bit it set */
snprintf(values[Atnum_modes], NCHARS, snprintf(values[Atnum_modes], NCHARS,
@ -256,9 +261,9 @@ pgrowlocks(PG_FUNCTION_ARGS)
else else
{ {
if (tuple->t_data->t_infomask2 & HEAP_KEYS_UPDATED) if (tuple->t_data->t_infomask2 & HEAP_KEYS_UPDATED)
snprintf(values[Atnum_modes], NCHARS, "{Key Update}");
else
snprintf(values[Atnum_modes], NCHARS, "{Update}"); snprintf(values[Atnum_modes], NCHARS, "{Update}");
else
snprintf(values[Atnum_modes], NCHARS, "{No Key Update}");
} }
values[Atnum_pids] = palloc(NCHARS * sizeof(char)); values[Atnum_pids] = palloc(NCHARS * sizeof(char));