Prevent lwlock dtrace probes from unnecessary work
authorPeter Eisentraut <peter@eisentraut.org>
Mon, 3 May 2021 10:11:33 +0000 (12:11 +0200)
committerPeter Eisentraut <peter@eisentraut.org>
Mon, 3 May 2021 10:18:27 +0000 (12:18 +0200)
commitb94409a02f6122d77b5154e481c0819fed6b4c95
treeef9754045429b159a6b9d3384ca1d25331b05415
parentc285babf8f44d86b7fd1e73e9e4f94456b825bfb
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
src/backend/storage/lmgr/lwlock.c