pg_stat_statements: Track number of times pgss entries were deallocated.
authorFujii Masao <fujii@postgresql.org>
Thu, 26 Nov 2020 12:18:05 +0000 (21:18 +0900)
committerFujii Masao <fujii@postgresql.org>
Thu, 26 Nov 2020 12:18:05 +0000 (21:18 +0900)
commit9fbc3f318d039c3e1e8614c38e40843cf8fcffde
treed23518e6b4de9c0ddf86cfc40541ecc26d0e82e8
parent4a36eab79a193700b7b65baf6c09c795c90c02c6
pg_stat_statements: Track number of times pgss entries were deallocated.

If more distinct statements than pg_stat_statements.max are observed,
pg_stat_statements entries about the least-executed statements are
deallocated. This commit enables us to track the total number of times
those entries were deallocated. That number can be viewed in the
pg_stat_statements_info view that this commit adds. It's useful when
tuning pg_stat_statements.max parameter. If it's high, i.e., the entries
are deallocated very frequently, which might cause the performance
regression and we can increase pg_stat_statements.max to avoid those
frequent deallocations.

The pg_stat_statements_info view is intended to display the statistics
of pg_stat_statements module itself. Currently it has only one column
"dealloc" indicating the number of times entries were deallocated.
But an upcoming patch will add other columns (for example, the time
at which pg_stat_statements statistics were last reset) into the view.

Author: Katsuragi Yuta, Yuki Seino
Reviewed-by: Fujii Masao
Discussion: https://postgr.es/m/0d9f1107772cf5c3f954e985464c7298@oss.nttdata.com
contrib/pg_stat_statements/Makefile
contrib/pg_stat_statements/expected/pg_stat_statements.out
contrib/pg_stat_statements/pg_stat_statements--1.8--1.9.sql [new file with mode: 0644]
contrib/pg_stat_statements/pg_stat_statements.c
contrib/pg_stat_statements/pg_stat_statements.control
contrib/pg_stat_statements/sql/pg_stat_statements.sql
doc/src/sgml/pgstatstatements.sgml
src/tools/pgindent/typedefs.list