1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-30 11:03:19 +03:00

Add NOT NULL checking of pg_stat_statements_reset() in tests

This is preliminary patch.  It adds NOT NULL checking for the result of
pg_stat_statements_reset() function. It is needed for upcoming patch
"Track statement entry timestamp" that will change the result type of
this function to the timestamp of a reset performed.

Discussion: https://postgr.es/m/flat/72e80e7b160a6eb189df9ef6f068cce3765d37f8.camel%40moonset.ru
Author: Andrei Zubkov
Reviewed-by: Julien Rouhaud, Hayato Kuroda, Yuki Seino, Chengxi Sun
Reviewed-by: Anton Melnikov, Darren Rush, Michael Paquier, Sergei Kornilov
Reviewed-by: Alena Rybakina, Andrei Lepikhov
This commit is contained in:
Alexander Korotkov
2023-11-27 02:50:59 +02:00
parent 01eca6a913
commit 6ab1dbd26b
16 changed files with 317 additions and 312 deletions

View File

@ -81,16 +81,16 @@ SELECT calls, rows, query FROM pg_stat_statements ORDER BY query COLLATE "C";
1 | 12 | SELECT * FROM pgss_dml_tab ORDER BY a
2 | 4 | SELECT * FROM pgss_dml_tab WHERE a > $1 ORDER BY a
1 | 8 | SELECT * FROM pgss_dml_tab WHERE a IN ($1, $2, $3, $4, $5)
1 | 1 | SELECT pg_stat_statements_reset()
1 | 1 | SELECT pg_stat_statements_reset() IS NOT NULL AS t
1 | 0 | SET pg_stat_statements.track_utility = FALSE
6 | 6 | UPDATE pgss_dml_tab SET b = $1 WHERE a = $2
1 | 3 | UPDATE pgss_dml_tab SET b = $1 WHERE a > $2
(10 rows)
SELECT pg_stat_statements_reset();
pg_stat_statements_reset
--------------------------
SELECT pg_stat_statements_reset() IS NOT NULL AS t;
t
---
t
(1 row)
-- MERGE
@ -136,16 +136,16 @@ SELECT calls, rows, query FROM pg_stat_statements ORDER BY query COLLATE "C";
| | WHEN NOT MATCHED THEN INSERT (a, b) VALUES ($1, $2)
1 | 0 | MERGE INTO pgss_dml_tab USING pgss_dml_tab st ON (st.a = pgss_dml_tab.a) +
| | WHEN NOT MATCHED THEN INSERT (b, a) VALUES ($1, $2)
1 | 1 | SELECT pg_stat_statements_reset()
1 | 1 | SELECT pg_stat_statements_reset() IS NOT NULL AS t
(10 rows)
-- check that [temp] table relation extensions are tracked as writes
CREATE TABLE pgss_extend_tab (a int, b text);
CREATE TEMP TABLE pgss_extend_temp_tab (a int, b text);
SELECT pg_stat_statements_reset();
pg_stat_statements_reset
--------------------------
SELECT pg_stat_statements_reset() IS NOT NULL AS t;
t
---
t
(1 row)
INSERT INTO pgss_extend_tab (a, b) SELECT generate_series(1, 1000), 'something';
@ -166,9 +166,9 @@ FROM pg_stat_statements;
t | t | t | t
(1 row)
SELECT pg_stat_statements_reset();
pg_stat_statements_reset
--------------------------
SELECT pg_stat_statements_reset() IS NOT NULL AS t;
t
---
t
(1 row)