Re: pgstat include expansion

Álvaro Herrera <alvherre@kurilemu.de>

From: Alvaro Herrera <alvherre@kurilemu.de>
To: Andres Freund <andres@anarazel.de>
Cc: Heikki Linnakangas <hlinnaka@iki.fi>, pgsql-hackers@postgresql.org, Amit Kapila <amit.kapila16@gmail.com>, Michael Paquier <michael@paquier.xyz>
Date: 2026-02-26T17:07:43Z
Lists: pgsql-hackers
Hi,

On 2026-Feb-26, Andres Freund wrote:

> I'm not sure that including in latch.h really would an improvement though -
> that's included in proc.h and libpq.h, which both are fairly widely included
> [1].

> [1] Although at least the include in libpq.h seems like it could trivially be
> replaced by a forward declaration. There's only three .c files that need to be
> fixed for that...

Okay, let's start there -- pushed that for now.

Pity, that we can't remove latch.h from proc.h.  That's really where
most of the mess is, here ...

-- 
Álvaro Herrera        Breisgau, Deutschland  —  https://www.EnterpriseDB.com/
Essentially, you're proposing Kevlar shoes as a solution for the problem
that you want to walk around carrying a loaded gun aimed at your foot.
(Tom Lane)



Commits

  1. Don't include wait_event.h in pgstat.h

  2. Don't include proc.h in shm_mq.h

  3. Don't include latch.h in libpq/libpq.h

  4. Reduce includes in pgstat.h

  5. Avoid including utils/timestamp.h in conflict.h.

  6. Avoid including worker_internal.h in pgstat.h.

  7. Add seq_sync_error_count to subscription statistics.

  8. Don't include execnodes.h in replication/conflict.h

  9. Collect statistics about conflicts in logical replication.