pgsql: Provide error context when an error is thrown within WaitOnLock( - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Provide error context when an error is thrown within WaitOnLock(
Date
Msg-id E1us50c-002H17-1o@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Provide error context when an error is thrown within WaitOnLock().

Show the requested lock level and the object being waited on,
in the same format we use for deadlock reports and similar errors.
This is particularly helpful for debugging lock-timeout errors,
since otherwise the user has very little to go on about which
lock timed out.  The performance cost of setting up the callback
should be negligible compared to the other tracing support already
present in WaitOnLock.

As in the deadlock-report case, we just show numeric object OIDs,
because it seems too scary to try to perform catalog lookups
in this context.

Reported-by: Steve Baldwin <steve.baldwin@gmail.com>
Author: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/1602369.1752167154@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/f727b63e810724c7187f38b2580b2915bdbc3c9c

Modified Files
--------------
src/backend/storage/lmgr/lock.c | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)


pgsql-committers by date:

Previous
From: Daniel Gustafsson
Date:
Subject: pgsql: pg_dump: Fix compression API errorhandling
Next
From: Bruce Momjian
Date:
Subject: pgsql: doc PG 18 relnotes: update to current