pgsql: pgstat: Track time of the last scan of a relation

Поиск
Список
Период
Сортировка
От Andres Freund
Тема pgsql: pgstat: Track time of the last scan of a relation
Дата
Msg-id E1ojPCj-002N3f-09@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
pgstat: Track time of the last scan of a relation

It can be useful to know when a relation has last been used, e.g., when
evaluating whether an index is still required. It was already possible to
infer the time of the last usage by tracking, e.g.,
pg_stat_all_indexes.idx_scan over time. But far from everybody does so.

To make it easier to detect the last time a relation has been scanned, track
that time in each relation's pgstat entry. To minimize overhead a) the
timestamp is updated only when the backend pending stats entry is flushed to
shared stats b) the last transaction's stop timestamp is used as the
timestamp.

Bumps catalog and stats format versions.

Author: Dave Page <dpage@pgadmin.org>
Reviewed-by: Andres Freund <andres@anarazel.de>
Reviewed-by: Bruce Momjian <bruce@momjian.us>
Reviewed-by: Vik Fearing <vik@postgresfriends.org>
Discussion: https://postgr.es/m/CA+OCxozrVHNFVEPkweUHMZje+t1tfY816d9MZYc6eZwOOusOaQ@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/c037471832e1ec3327f81eebbd8892e5c1042fe0

Modified Files
--------------
doc/src/sgml/monitoring.sgml                 |  30 ++++
src/backend/catalog/system_views.sql         |   3 +
src/backend/utils/activity/pgstat_relation.c |   6 +
src/backend/utils/adt/pgstatfuncs.c          |  13 ++
src/include/catalog/catversion.h             |   2 +-
src/include/catalog/pg_proc.dat              |   4 +
src/include/pgstat.h                         |   3 +-
src/test/regress/expected/rules.out          |   9 ++
src/test/regress/expected/stats.out          | 202 +++++++++++++++++++++++++++
src/test/regress/sql/stats.sql               |  86 ++++++++++++
10 files changed, 356 insertions(+), 2 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: pgsql: libpq: Reset singlerow flag correctly in pipeline mode
Следующее
От: Michael Paquier
Дата:
Сообщение: pgsql: Fix some comments in proc.h