diff options
Diffstat (limited to 'contrib/pg_buffercache/pg_buffercache--1.2.sql')
-rw-r--r-- | contrib/pg_buffercache/pg_buffercache--1.2.sql | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/contrib/pg_buffercache/pg_buffercache--1.2.sql b/contrib/pg_buffercache/pg_buffercache--1.2.sql new file mode 100644 index 0000000..6ee5d84 --- /dev/null +++ b/contrib/pg_buffercache/pg_buffercache--1.2.sql @@ -0,0 +1,21 @@ +/* contrib/pg_buffercache/pg_buffercache--1.2.sql */ + +-- complain if script is sourced in psql, rather than via CREATE EXTENSION +\echo Use "CREATE EXTENSION pg_buffercache" to load this file. \quit + +-- Register the function. +CREATE FUNCTION pg_buffercache_pages() +RETURNS SETOF RECORD +AS 'MODULE_PATHNAME', 'pg_buffercache_pages' +LANGUAGE C PARALLEL SAFE; + +-- Create a view for convenient access. +CREATE VIEW pg_buffercache AS + SELECT P.* FROM pg_buffercache_pages() AS P + (bufferid integer, relfilenode oid, reltablespace oid, reldatabase oid, + relforknumber int2, relblocknumber int8, isdirty bool, usagecount int2, + pinning_backends int4); + +-- Don't want these to be available to public. +REVOKE ALL ON FUNCTION pg_buffercache_pages() FROM PUBLIC; +REVOKE ALL ON pg_buffercache FROM PUBLIC; |