mirror of
				https://github.com/postgres/postgres.git
				synced 2025-10-31 10:30:33 +03:00 
			
		
		
		
	All functions provided by this extension are PARALLEL SAFE. Given the general prohibition against write operations in parallel queries, it is perhaps a bit surprising that pg_stat_statements_reset() is parallel safe. But since it only modifies shared memory, not the database, it's OK. Andreas Karlsson
		
			
				
	
	
		
			49 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
| /* contrib/pg_stat_statements/pg_stat_statements--1.4.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 PARALLEL SAFE;
 | |
| 
 | |
| CREATE FUNCTION pg_stat_statements(IN showtext boolean,
 | |
|     OUT userid oid,
 | |
|     OUT dbid oid,
 | |
|     OUT queryid bigint,
 | |
|     OUT query text,
 | |
|     OUT calls int8,
 | |
|     OUT total_time float8,
 | |
|     OUT min_time float8,
 | |
|     OUT max_time float8,
 | |
|     OUT mean_time float8,
 | |
|     OUT stddev_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', 'pg_stat_statements_1_3'
 | |
| LANGUAGE C STRICT VOLATILE PARALLEL SAFE;
 | |
| 
 | |
| -- Register a view on the function for ease of use.
 | |
| CREATE VIEW pg_stat_statements AS
 | |
|   SELECT * FROM pg_stat_statements(true);
 | |
| 
 | |
| 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;
 |