Skip to content

Commit e6d9544

Browse files
committed
Harden pg_stat_statements tests against CLOBBER_CACHE_ALWAYS.
Turns out the buildfarm hasn't been testing this, which will soon change. Julien Rouhaud, per report from me Discussion: https://postgr.es/m/42557.1627229005@sss.pgh.pa.us
1 parent dece64a commit e6d9544

File tree

2 files changed

+26
-11
lines changed

2 files changed

+26
-11
lines changed

contrib/pg_stat_statements/expected/pg_stat_statements.out

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -850,16 +850,26 @@ SELECT 42;
850850
42
851851
(1 row)
852852

853-
SELECT query, plans, calls, rows FROM pg_stat_statements ORDER BY query COLLATE "C";
854-
query | plans | calls | rows
855-
-------------------------------------------------------------------------------------+-------+-------+------
856-
ALTER TABLE test ADD COLUMN x int | 0 | 1 | 0
857-
CREATE TABLE test () | 0 | 1 | 0
858-
PREPARE prep1 AS SELECT COUNT(*) FROM test | 2 | 4 | 4
859-
SELECT $1 | 3 | 3 | 3
860-
SELECT pg_stat_statements_reset() | 0 | 1 | 1
861-
SELECT query, plans, calls, rows FROM pg_stat_statements ORDER BY query COLLATE "C" | 1 | 0 | 0
862-
(6 rows)
853+
SELECT query, plans, calls, rows FROM pg_stat_statements
854+
WHERE query NOT LIKE 'PREPARE%' ORDER BY query COLLATE "C";
855+
query | plans | calls | rows
856+
----------------------------------------------------------+-------+-------+------
857+
ALTER TABLE test ADD COLUMN x int | 0 | 1 | 0
858+
CREATE TABLE test () | 0 | 1 | 0
859+
SELECT $1 | 3 | 3 | 3
860+
SELECT pg_stat_statements_reset() | 0 | 1 | 1
861+
SELECT query, plans, calls, rows FROM pg_stat_statements+| 1 | 0 | 0
862+
WHERE query NOT LIKE $1 ORDER BY query COLLATE "C" | | |
863+
(5 rows)
864+
865+
-- for the prepared statement we expect at least one replan, but cache
866+
-- invalidations could force more
867+
SELECT query, plans >= 2 AND plans <= calls AS plans_ok, calls, rows FROM pg_stat_statements
868+
WHERE query LIKE 'PREPARE%' ORDER BY query COLLATE "C";
869+
query | plans_ok | calls | rows
870+
--------------------------------------------+----------+-------+------
871+
PREPARE prep1 AS SELECT COUNT(*) FROM test | t | 4 | 4
872+
(1 row)
863873

864874
--
865875
-- access to pg_stat_statements_info view

contrib/pg_stat_statements/sql/pg_stat_statements.sql

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,12 @@ EXECUTE prep1;
356356
SELECT 42;
357357
SELECT 42;
358358
SELECT 42;
359-
SELECT query, plans, calls, rows FROM pg_stat_statements ORDER BY query COLLATE "C";
359+
SELECT query, plans, calls, rows FROM pg_stat_statements
360+
WHERE query NOT LIKE 'PREPARE%' ORDER BY query COLLATE "C";
361+
-- for the prepared statement we expect at least one replan, but cache
362+
-- invalidations could force more
363+
SELECT query, plans >= 2 AND plans <= calls AS plans_ok, calls, rows FROM pg_stat_statements
364+
WHERE query LIKE 'PREPARE%' ORDER BY query COLLATE "C";
360365

361366
--
362367
-- access to pg_stat_statements_info view

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy