Add minimal set of regression tests for pg_stat_statements.

While the set of covered functionality is fairly small, the added tests
still are useful to get some basic buildfarm testing of
pg_stat_statements itself, but also to exercise the lwlock tranch code
on the buildfarm.

Author: Amit Kapila, slightly editorialized by me
Reviewed-By: Ashutosh Sharma, Andres Freund
Discussion: <CAA4eK1JOjkdXYtHxh=2aDK4VgDtN-LNGKY_YqX0N=YEvuzQVWg@mail.gmail.com>
This commit is contained in:
Andres Freund 2016-11-12 05:01:48 -08:00
parent 1c14755776
commit 9be244dbe8
4 changed files with 44 additions and 0 deletions

View File

@ -11,6 +11,9 @@ PGFILEDESC = "pg_stat_statements - execution statistics of SQL statements"
LDFLAGS_SL += $(filter -lm, $(LIBS))
REGRESS_OPTS = --temp-config $(top_srcdir)/contrib/pg_stat_statements/pg_stat_statements.conf
REGRESS = pg_stat_statements
ifdef USE_PGXS
PG_CONFIG = pg_config
PGXS := $(shell $(PG_CONFIG) --pgxs)
@ -21,3 +24,7 @@ top_builddir = ../..
include $(top_builddir)/src/Makefile.global
include $(top_srcdir)/contrib/contrib-global.mk
endif
# Disabled because these tests require "shared_preload_libraries=pg_stat_statements",
# which typical installcheck users do not have (e.g. buildfarm clients).
installcheck: REGRESS=

View File

@ -0,0 +1,21 @@
CREATE EXTENSION pg_stat_statements;
CREATE TABLE test (a int, b char(20));
-- test the basic functionality of pg_stat_statements
SELECT pg_stat_statements_reset();
pg_stat_statements_reset
--------------------------
(1 row)
INSERT INTO test VALUES(generate_series(1, 10), 'aaa');
UPDATE test SET b = 'bbb' WHERE a > 5;
SELECT query, calls, rows from pg_stat_statements ORDER BY rows;
query | calls | rows
----------------------------------------------------+-------+------
SELECT pg_stat_statements_reset(); | 1 | 1
UPDATE test SET b = ? WHERE a > ?; | 1 | 5
INSERT INTO test VALUES(generate_series(?, ?), ?); | 1 | 10
(3 rows)
DROP TABLE test;
DROP EXTENSION pg_stat_statements;

View File

@ -0,0 +1 @@
shared_preload_libraries = 'pg_stat_statements'

View File

@ -0,0 +1,15 @@
CREATE EXTENSION pg_stat_statements;
CREATE TABLE test (a int, b char(20));
-- test the basic functionality of pg_stat_statements
SELECT pg_stat_statements_reset();
INSERT INTO test VALUES(generate_series(1, 10), 'aaa');
UPDATE test SET b = 'bbb' WHERE a > 5;
SELECT query, calls, rows from pg_stat_statements ORDER BY rows;
DROP TABLE test;
DROP EXTENSION pg_stat_statements;