Re: Adding locks statistics

Álvaro Herrera <alvherre@kurilemu.de>

From: Álvaro Herrera <alvherre@kurilemu.de>
To: "Michael Paquier" <michael@paquier.xyz>, "Bertrand Drouvot" <bertranddrouvot.pg@gmail.com>
Cc: "Andres Freund" <andres@anarazel.de>, "Jeff Davis" <pgsql@j-davis.com>, "Greg Sabino Mullane" <htamfids@gmail.com>, "L. pgsql-hackers" <pgsql-hackers@lists.postgresql.org>
Date: 2026-03-21T20:01:02Z
Lists: pgsql-hackers

Attachments

On 2026-03-21, Michael Paquier wrote:
> On Thu, Mar 19, 2026 at 12:25:41PM +0000, Bertrand Drouvot wrote:

>> I did not check if there are any other files that could benefit of using
>> locktag.h instead of lock.h but that's something I'll do and open a dedicated
>> if any (once locktag.h is in the tree).
>
> I have checked after that, and did not spot an area (except your patch
> of course).  And applied this part.

I checked this, and found a couple of headers that can benefit from a removal, as shown in the attached patches.

A special case (not modified here) is proc.h. It seems to me that lock.h _could_ be removed from there with some effort, but the amount of .c files that would benefit seems to me not large enough to justify the number of contortions needed.  Others could disagree though.

-- 
Álvaro Herrera

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Fix injection point detach timing problem in TAP test for lock stats

  2. Use single LWLock for lock statistics in pgstats

  3. Add tests for lock statistics, take two

  4. Remove isolation test lock-stats

  5. Avoid including clog.h in proc.h

  6. Don't include storage/lock.h in so many headers

  7. Add support for lock statistics in pgstats

  8. Move some code blocks in lock.c and proc.c

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