diff options
author | Andres Freund <andres@anarazel.de> | 2016-11-12 05:01:48 -0800 |
---|---|---|
committer | Andres Freund <andres@anarazel.de> | 2016-11-12 05:01:48 -0800 |
commit | 9be244dbe876038676e92e34d0f9fe55914376d2 (patch) | |
tree | e6c6d664cc92d12df8fa444cd907daa7480bc4ae | |
parent | 1c1475577623019ff887825b9a804f78ec806344 (diff) | |
download | postgresql-9be244dbe876038676e92e34d0f9fe55914376d2.tar.gz |
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>
-rw-r--r-- | contrib/pg_stat_statements/Makefile | 7 | ||||
-rw-r--r-- | contrib/pg_stat_statements/expected/pg_stat_statements.out | 21 | ||||
-rw-r--r-- | contrib/pg_stat_statements/pg_stat_statements.conf | 1 | ||||
-rw-r--r-- | contrib/pg_stat_statements/sql/pg_stat_statements.sql | 15 |
4 files changed, 44 insertions, 0 deletions
diff --git a/contrib/pg_stat_statements/Makefile b/contrib/pg_stat_statements/Makefile index ddcdb10b92..f1a45eb17a 100644 --- a/contrib/pg_stat_statements/Makefile +++ b/contrib/pg_stat_statements/Makefile @@ -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= diff --git a/contrib/pg_stat_statements/expected/pg_stat_statements.out b/contrib/pg_stat_statements/expected/pg_stat_statements.out new file mode 100644 index 0000000000..3573c19234 --- /dev/null +++ b/contrib/pg_stat_statements/expected/pg_stat_statements.out @@ -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; diff --git a/contrib/pg_stat_statements/pg_stat_statements.conf b/contrib/pg_stat_statements/pg_stat_statements.conf new file mode 100644 index 0000000000..13346e2807 --- /dev/null +++ b/contrib/pg_stat_statements/pg_stat_statements.conf @@ -0,0 +1 @@ +shared_preload_libraries = 'pg_stat_statements' diff --git a/contrib/pg_stat_statements/sql/pg_stat_statements.sql b/contrib/pg_stat_statements/sql/pg_stat_statements.sql new file mode 100644 index 0000000000..7e2b263428 --- /dev/null +++ b/contrib/pg_stat_statements/sql/pg_stat_statements.sql @@ -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; |