Move declarations related to locktags from lock.h to new locktag.h

Michael Paquier <michael@paquier.xyz>

Commit: 322bab79744dfb8f7ddb5191b3102cf7986d14a0
Author: Michael Paquier <michael@paquier.xyz>
Date: 2026-03-21T05:34:47Z
Move declarations related to locktags from lock.h to new locktag.h

This commit moves all the declarations related to locktags from lock.h
to a new header called locktag.h.  This header is useful so as code
paths that care about locktags but not the lock hashtable can know about
these without having to include lock.h and all its set of dependencies.

This move includes the basic locktag structures and the set of macros to
fill in the locktag fields before attempting to acquire a lock.

Based on a suggestion from me, suggestion done while discussing a
different feature.

Author: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
Reviewed-by: Michael Paquier <michael@paquier.xyz>
Discussion: https://postgr.es/m/abufUya2oK-_PJ3E@paquier.xyz

Files

PathChange+/−
src/include/storage/lock.h modified +1 −172
src/include/storage/locktag.h added +190 −0

Discussion