pg_stat_statements: Add tests for nested queries with level tracking There have never been any regression tests in PGSS for various query patterns for nested queries combined with level tracking, like: - Multi-statements. - CREATE TABLE AS - CREATE/REFRESH MATERIALIZED VIEW - DECLARE CURSOR - EXPLAIN, with a subset of the above supported. - COPY.
All the tests added here track historical, sometimes confusing, existing behaviors. For example, EXPLAIN stores two PGSS entries with the same top-level query string but two different query IDs as one is calculated for the top-level EXPLAIN (this part is right) and a second one for the inner query in the EXPLAIN (this part is not right). A couple of patches are under discussion to improve the situation, and all the tests added here will prove useful to evaluate the changes discussed. Author: Anthonin Bonnefoy Reviewed-by: Michael Paquier, Jian He Discussion: https://postgr.es/m/CAO6_XqqM6S9bQ2qd=75w+ykatwoazxsnhv5sjw06fjgathb...@mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/45e0ba30fc40581f320fac17ad8b4e0676e1b3b5 Modified Files -------------- .../pg_stat_statements/expected/level_tracking.out | 1151 ++++++++++++++++++++ contrib/pg_stat_statements/sql/level_tracking.sql | 246 +++++ 2 files changed, 1397 insertions(+)