Thread: [COMMITTERS] pgsql: Create and use wait events for read, write,and fsync operations

Create and use wait events for read, write, and fsync operations.

Previous commits, notably 53be0b1add7064ca5db3cd884302dfc3268d884e and
6f3bd98ebfc008cbd676da777bb0b2376c4c4bfa, made it possible to see from
pg_stat_activity when a backend was stuck waiting for another backend,
but it's also fairly common for a backend to be stuck waiting for an
I/O.  Add wait events for those operations, too.

Rushabh Lathia, with further hacking by me.  Reviewed and tested by
Michael Paquier, Amit Kapila, Rajkumar Raghuwanshi, and Rahila Syed.

Discussion: http://postgr.es/m/CAGPqQf0LsYHXREPAZqYGVkDqHSyjf=KsD=k0GTVPAuzyThh-VQ@mail.gmail.com

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/249cf070e36721a65be74838c53acf8249faf935

Modified Files
--------------
doc/src/sgml/monitoring.sgml                    | 271 ++++++++++++++++++++++++
src/backend/access/heap/rewriteheap.c           |  17 +-
src/backend/access/transam/slru.c               |  12 ++
src/backend/access/transam/timeline.c           |  11 +
src/backend/access/transam/twophase.c           |   9 +
src/backend/access/transam/xlog.c               |  31 +++
src/backend/access/transam/xlogutils.c          |   3 +
src/backend/postmaster/pgstat.c                 | 233 ++++++++++++++++++++
src/backend/replication/logical/reorderbuffer.c |   9 +
src/backend/replication/logical/snapbuild.c     |  14 ++
src/backend/replication/slot.c                  |  13 ++
src/backend/replication/walsender.c             |   4 +
src/backend/storage/file/buffile.c              |  11 +-
src/backend/storage/file/copydir.c              |   7 +-
src/backend/storage/file/fd.c                   |  28 ++-
src/backend/storage/ipc/dsm_impl.c              |   3 +
src/backend/storage/smgr/md.c                   |  21 +-
src/backend/utils/cache/relmapper.c             |   7 +
src/backend/utils/init/miscinit.c               |  17 ++
src/include/pgstat.h                            |  78 +++++++
src/include/storage/fd.h                        |  12 +-
21 files changed, 782 insertions(+), 29 deletions(-)