Don't include wait_event.h in pgstat.h

wait_event.h itself includes wait_event_types.h, which is a generated
file, so it's nice that we can avoid compiling >10% of the tree just
because that file is regenerated.

To avoid breaking too many third-party modules, we now #include
utils/wait_classes.h in storage/latch.h.  Then, the very common case
of doing
        WaitLatch(..., PG_WAIT_EXTENSION)
continues to work by including just storage/latch.h.  (I didn't try to
determine how many modules would actually break if we don't do this, but
this seems a convenient and low-impact measure.)

Reviewed-by: Andres Freund <[email protected]>
Discussion: https://postgr.es/m/[email protected]

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/868825aaeb4099081364b563e532c30c1b31cabd

Modified Files
--------------
contrib/pg_prewarm/autoprewarm.c                      | 1 +
src/backend/access/brin/brin.c                        | 1 +
src/backend/access/gin/gininsert.c                    | 1 +
src/backend/access/heap/rewriteheap.c                 | 1 +
src/backend/access/heap/vacuumlazy.c                  | 1 +
src/backend/access/nbtree/nbtree.c                    | 1 +
src/backend/access/nbtree/nbtsort.c                   | 1 +
src/backend/access/transam/clog.c                     | 1 +
src/backend/access/transam/parallel.c                 | 1 +
src/backend/access/transam/slru.c                     | 1 +
src/backend/access/transam/timeline.c                 | 1 +
src/backend/access/transam/twophase.c                 | 1 +
src/backend/access/transam/xact.c                     | 1 +
src/backend/access/transam/xlog.c                     | 1 +
src/backend/access/transam/xlogarchive.c              | 1 +
src/backend/access/transam/xlogfuncs.c                | 1 +
src/backend/access/transam/xlogreader.c               | 1 +
src/backend/access/transam/xlogrecovery.c             | 1 +
src/backend/access/transam/xlogwait.c                 | 1 +
src/backend/archive/shell_archive.c                   | 1 +
src/backend/backup/basebackup.c                       | 1 +
src/backend/backup/basebackup_throttle.c              | 1 +
src/backend/commands/copyfromparse.c                  | 1 +
src/backend/commands/copyto.c                         | 1 +
src/backend/commands/dbcommands.c                     | 1 +
src/backend/commands/vacuum.c                         | 1 +
src/backend/executor/nodeAppend.c                     | 1 +
src/backend/executor/nodeBitmapHeapscan.c             | 1 +
src/backend/libpq/be-secure-gssapi.c                  | 1 +
src/backend/libpq/be-secure-openssl.c                 | 1 +
src/backend/libpq/pqmq.c                              | 1 +
src/backend/postmaster/autovacuum.c                   | 1 +
src/backend/postmaster/auxprocess.c                   | 1 +
src/backend/postmaster/bgworker.c                     | 1 +
src/backend/postmaster/bgwriter.c                     | 1 +
src/backend/postmaster/checkpointer.c                 | 1 +
src/backend/postmaster/pgarch.c                       | 1 +
src/backend/postmaster/syslogger.c                    | 1 +
src/backend/postmaster/walwriter.c                    | 1 +
src/backend/replication/logical/applyparallelworker.c | 1 +
src/backend/replication/logical/launcher.c            | 1 +
src/backend/replication/logical/origin.c              | 1 +
src/backend/replication/logical/reorderbuffer.c       | 1 +
src/backend/replication/logical/slotsync.c            | 1 +
src/backend/replication/logical/snapbuild.c           | 3 +++
src/backend/replication/logical/tablesync.c           | 1 +
src/backend/replication/logical/worker.c              | 1 +
src/backend/replication/slot.c                        | 1 +
src/backend/replication/syncrep.c                     | 1 +
src/backend/replication/walreceiver.c                 | 1 +
src/backend/replication/walreceiverfuncs.c            | 1 +
src/backend/replication/walsender.c                   | 1 +
src/backend/storage/buffer/bufmgr.c                   | 1 +
src/backend/storage/file/buffile.c                    | 1 +
src/backend/storage/file/copydir.c                    | 1 +
src/backend/storage/file/fd.c                         | 1 +
src/backend/storage/ipc/dsm_impl.c                    | 1 +
src/backend/storage/ipc/ipci.c                        | 1 +
src/backend/storage/ipc/procarray.c                   | 1 +
src/backend/storage/ipc/procsignal.c                  | 1 +
src/backend/storage/ipc/shm_mq.c                      | 1 +
src/backend/storage/ipc/signalfuncs.c                 | 1 +
src/backend/storage/ipc/standby.c                     | 1 +
src/backend/storage/ipc/waiteventset.c                | 1 +
src/backend/storage/lmgr/lwlock.c                     | 1 +
src/backend/storage/lmgr/predicate.c                  | 1 +
src/backend/storage/lmgr/proc.c                       | 1 +
src/backend/storage/smgr/md.c                         | 1 +
src/backend/storage/sync/sync.c                       | 1 +
src/backend/utils/adt/misc.c                          | 1 +
src/backend/utils/adt/pgstatfuncs.c                   | 1 +
src/backend/utils/cache/relmapper.c                   | 1 +
src/backend/utils/init/miscinit.c                     | 1 +
src/common/controldata_utils.c                        | 1 +
src/include/pgstat.h                                  | 1 -
src/include/storage/latch.h                           | 2 ++
src/test/modules/test_shm_mq/setup.c                  | 1 +
src/test/modules/test_shm_mq/test.c                   | 1 +
src/test/modules/worker_spi/worker_spi.c              | 1 +
79 files changed, 81 insertions(+), 1 deletion(-)

Reply via email to