Prevent lwlock dtrace probes from unnecessary work

Peter Eisentraut <peter@eisentraut.org>

Commit: e48ce7ef0ef8de3d8e9e56be4d23d7830681b18b
Author: Peter Eisentraut <peter@eisentraut.org>
Date: 2021-05-03T19:01:09Z
Releases: 13.3
Prevent lwlock dtrace probes from unnecessary work

If dtrace is compiled in but disabled, the lwlock dtrace probes still
evaluate their arguments.  Since PostgreSQL 13, T_NAME(lock) does
nontrivial work, so it should be avoided if not needed.  To fix, make
these calls conditional on the *_ENABLED() macro corresponding to each
probe.

Reviewed-by: Craig Ringer <craig.ringer@enterprisedb.com>
Discussion: https://www.postgresql.org/message-id/CAGRY4nwxKUS_RvXFW-ugrZBYxPFFM5kjwKT5O+0+Stuga5b4+Q@mail.gmail.com

Files

PathChange+/−
src/backend/storage/lmgr/lwlock.c modified +26 −13

Discussion