mirror of https://github.com/postgres/postgres
The query ID is the internal hash identifier of the statement, and was not available in pg_stat_statements view so far. Daniel Farina, Sameer Thakur and Peter Geoghegan, reviewed by me.pull/6/head
parent
ef3267523d
commit
91484409bd
@ -0,0 +1,43 @@ |
|||||||
|
/* contrib/pg_stat_statements/pg_stat_statements--1.1--1.2.sql */ |
||||||
|
|
||||||
|
-- complain if script is sourced in psql, rather than via ALTER EXTENSION |
||||||
|
\echo Use "ALTER EXTENSION pg_stat_statements UPDATE TO '1.2'" to load this file. \quit |
||||||
|
|
||||||
|
/* First we have to remove them from the extension */ |
||||||
|
ALTER EXTENSION pg_stat_statements DROP VIEW pg_stat_statements; |
||||||
|
ALTER EXTENSION pg_stat_statements DROP FUNCTION pg_stat_statements(); |
||||||
|
|
||||||
|
/* Then we can drop them */ |
||||||
|
DROP VIEW pg_stat_statements; |
||||||
|
DROP FUNCTION pg_stat_statements(); |
||||||
|
|
||||||
|
/* Now redefine */ |
||||||
|
CREATE FUNCTION pg_stat_statements( |
||||||
|
OUT userid oid, |
||||||
|
OUT dbid oid, |
||||||
|
OUT queryid bigint, |
||||||
|
OUT query text, |
||||||
|
OUT calls int8, |
||||||
|
OUT total_time float8, |
||||||
|
OUT rows int8, |
||||||
|
OUT shared_blks_hit int8, |
||||||
|
OUT shared_blks_read int8, |
||||||
|
OUT shared_blks_dirtied int8, |
||||||
|
OUT shared_blks_written int8, |
||||||
|
OUT local_blks_hit int8, |
||||||
|
OUT local_blks_read int8, |
||||||
|
OUT local_blks_dirtied int8, |
||||||
|
OUT local_blks_written int8, |
||||||
|
OUT temp_blks_read int8, |
||||||
|
OUT temp_blks_written int8, |
||||||
|
OUT blk_read_time float8, |
||||||
|
OUT blk_write_time float8 |
||||||
|
) |
||||||
|
RETURNS SETOF record |
||||||
|
AS 'MODULE_PATHNAME' |
||||||
|
LANGUAGE C; |
||||||
|
|
||||||
|
CREATE VIEW pg_stat_statements AS |
||||||
|
SELECT * FROM pg_stat_statements(); |
||||||
|
|
||||||
|
GRANT SELECT ON pg_stat_statements TO PUBLIC; |
@ -1,43 +0,0 @@ |
|||||||
/* contrib/pg_stat_statements/pg_stat_statements--1.1.sql */ |
|
||||||
|
|
||||||
-- complain if script is sourced in psql, rather than via CREATE EXTENSION |
|
||||||
\echo Use "CREATE EXTENSION pg_stat_statements" to load this file. \quit |
|
||||||
|
|
||||||
-- Register functions. |
|
||||||
CREATE FUNCTION pg_stat_statements_reset() |
|
||||||
RETURNS void |
|
||||||
AS 'MODULE_PATHNAME' |
|
||||||
LANGUAGE C; |
|
||||||
|
|
||||||
CREATE FUNCTION pg_stat_statements( |
|
||||||
OUT userid oid, |
|
||||||
OUT dbid oid, |
|
||||||
OUT query text, |
|
||||||
OUT calls int8, |
|
||||||
OUT total_time float8, |
|
||||||
OUT rows int8, |
|
||||||
OUT shared_blks_hit int8, |
|
||||||
OUT shared_blks_read int8, |
|
||||||
OUT shared_blks_dirtied int8, |
|
||||||
OUT shared_blks_written int8, |
|
||||||
OUT local_blks_hit int8, |
|
||||||
OUT local_blks_read int8, |
|
||||||
OUT local_blks_dirtied int8, |
|
||||||
OUT local_blks_written int8, |
|
||||||
OUT temp_blks_read int8, |
|
||||||
OUT temp_blks_written int8, |
|
||||||
OUT blk_read_time float8, |
|
||||||
OUT blk_write_time float8 |
|
||||||
) |
|
||||||
RETURNS SETOF record |
|
||||||
AS 'MODULE_PATHNAME' |
|
||||||
LANGUAGE C; |
|
||||||
|
|
||||||
-- Register a view on the function for ease of use. |
|
||||||
CREATE VIEW pg_stat_statements AS |
|
||||||
SELECT * FROM pg_stat_statements(); |
|
||||||
|
|
||||||
GRANT SELECT ON pg_stat_statements TO PUBLIC; |
|
||||||
|
|
||||||
-- Don't want this to be available to non-superusers. |
|
||||||
REVOKE ALL ON FUNCTION pg_stat_statements_reset() FROM PUBLIC; |
|
@ -0,0 +1,44 @@ |
|||||||
|
/* contrib/pg_stat_statements/pg_stat_statements--1.2.sql */ |
||||||
|
|
||||||
|
-- complain if script is sourced in psql, rather than via CREATE EXTENSION |
||||||
|
\echo Use "CREATE EXTENSION pg_stat_statements" to load this file. \quit |
||||||
|
|
||||||
|
-- Register functions. |
||||||
|
CREATE FUNCTION pg_stat_statements_reset() |
||||||
|
RETURNS void |
||||||
|
AS 'MODULE_PATHNAME' |
||||||
|
LANGUAGE C; |
||||||
|
|
||||||
|
CREATE FUNCTION pg_stat_statements( |
||||||
|
OUT userid oid, |
||||||
|
OUT dbid oid, |
||||||
|
OUT queryid bigint, |
||||||
|
OUT query text, |
||||||
|
OUT calls int8, |
||||||
|
OUT total_time float8, |
||||||
|
OUT rows int8, |
||||||
|
OUT shared_blks_hit int8, |
||||||
|
OUT shared_blks_read int8, |
||||||
|
OUT shared_blks_dirtied int8, |
||||||
|
OUT shared_blks_written int8, |
||||||
|
OUT local_blks_hit int8, |
||||||
|
OUT local_blks_read int8, |
||||||
|
OUT local_blks_dirtied int8, |
||||||
|
OUT local_blks_written int8, |
||||||
|
OUT temp_blks_read int8, |
||||||
|
OUT temp_blks_written int8, |
||||||
|
OUT blk_read_time float8, |
||||||
|
OUT blk_write_time float8 |
||||||
|
) |
||||||
|
RETURNS SETOF record |
||||||
|
AS 'MODULE_PATHNAME' |
||||||
|
LANGUAGE C; |
||||||
|
|
||||||
|
-- Register a view on the function for ease of use. |
||||||
|
CREATE VIEW pg_stat_statements AS |
||||||
|
SELECT * FROM pg_stat_statements(); |
||||||
|
|
||||||
|
GRANT SELECT ON pg_stat_statements TO PUBLIC; |
||||||
|
|
||||||
|
-- Don't want this to be available to non-superusers. |
||||||
|
REVOKE ALL ON FUNCTION pg_stat_statements_reset() FROM PUBLIC; |
@ -1,5 +1,5 @@ |
|||||||
# pg_stat_statements extension |
# pg_stat_statements extension |
||||||
comment = 'track execution statistics of all SQL statements executed' |
comment = 'track execution statistics of all SQL statements executed' |
||||||
default_version = '1.1' |
default_version = '1.2' |
||||||
module_pathname = '$libdir/pg_stat_statements' |
module_pathname = '$libdir/pg_stat_statements' |
||||||
relocatable = true |
relocatable = true |
||||||
|
Loading…
Reference in new issue