Track shared buffer hits in pg_stat_io
authorAndres Freund <andres@anarazel.de>
Fri, 31 Mar 2023 02:22:40 +0000 (19:22 -0700)
committerAndres Freund <andres@anarazel.de>
Fri, 31 Mar 2023 02:24:21 +0000 (19:24 -0700)
commit8aaa04b32d790da595684de58ae4fc2db96becff
treed9993491ee35f81fbf8be407a4ef76b486768ef0
parent6c3b697b19db6274da622cf0fe7a7ad32eeeced3
Track shared buffer hits in pg_stat_io

Among other things, this should make it easier to calculate a useful cache hit
ratio by excluding buffer reads via buffer access strategies. As buffer access
strategies reuse buffers (and thus evict the prior buffer contents), it is
normal to see reads on repeated scans of the same data.

Author: Melanie Plageman <melanieplageman@gmail.com>
Reviewed-by: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
Reviewed-by: Andres Freund <andres@anarazel.de>
Discussion: https://postgr.es/m/CAAKRu_beMa9Hzih40%3DXPYqhDVz6tsgUGTrhZXRo%3Dunp%2Bszb%3DUA%40mail.gmail.com
12 files changed:
doc/src/sgml/monitoring.sgml
src/backend/catalog/system_views.sql
src/backend/storage/buffer/bufmgr.c
src/backend/storage/buffer/localbuf.c
src/backend/utils/activity/pgstat_io.c
src/backend/utils/adt/pgstatfuncs.c
src/include/catalog/pg_proc.dat
src/include/pgstat.h
src/include/storage/buf_internals.h
src/test/regress/expected/rules.out
src/test/regress/expected/stats.out
src/test/regress/sql/stats.sql