-- -- PostgreSQL database dump -- SET statement_timeout = 0; SET lock_timeout = 0; SET client_encoding = 'UTF8'; SET standard_conforming_strings = on; SET check_function_bodies = false; SET client_min_messages = warning; -- -- Name: _utility; Type: SCHEMA; Schema: -; Owner: postgres -- CREATE SCHEMA _utility; ALTER SCHEMA _utility OWNER TO postgres; -- -- Name: plpgsql; Type: EXTENSION; Schema: -; Owner: -- CREATE EXTENSION IF NOT EXISTS plpgsql WITH SCHEMA pg_catalog; -- -- Name: EXTENSION plpgsql; Type: COMMENT; Schema: -; Owner: -- COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language'; SET search_path = _utility, pg_catalog; -- -- Name: process_list(); Type: FUNCTION; Schema: _utility; Owner: postgres -- CREATE FUNCTION process_list() RETURNS SETOF pg_stat_activity LANGUAGE plpgsql SECURITY DEFINER AS $$ begin return query ( select pg_stat_activity.* from pg_stat_activity inner join pg_roles on pg_roles.rolname = session_user where pg_roles.rolsuper or pg_stat_activity.datname = current_database() ); end $$; ALTER FUNCTION _utility.process_list() OWNER TO postgres; -- -- Name: vw_process_lock; Type: VIEW; Schema: _utility; Owner: postgres -- CREATE VIEW vw_process_lock AS SELECT pg_locks.locktype, pg_locks.database, pg_locks.relation, pg_locks.page, pg_locks.tuple, pg_locks.virtualxid, pg_locks.transactionid, pg_locks.classid, pg_locks.objid, pg_locks.objsubid, pg_locks.virtualtransaction, pg_locks.pid, pg_locks.mode, pg_locks.granted, pg_locks.fastpath FROM ((pg_locks LEFT JOIN pg_database ON ((pg_database.oid = pg_locks.database))) JOIN pg_roles ON ((pg_roles.rolname = "session_user"()))) WHERE ((pg_locks.pid <> pg_backend_pid()) AND (pg_roles.rolsuper OR (pg_database.datname = current_database()))); ALTER TABLE _utility.vw_process_lock OWNER TO postgres; -- -- Name: vw_process_block; Type: VIEW; Schema: _utility; Owner: postgres -- CREATE VIEW vw_process_block AS SELECT blocking.pid AS blocking_pid, blocking.mode AS blocking_mode, blocked.pid AS blocked_pid, blocked.mode AS blocked_mode, blocked.locktype, blocked.database, blocked.relation, blocked.page, blocked.tuple, blocked.virtualxid, blocked.transactionid, blocked.classid, blocked.objid, blocked.objsubid FROM (pg_locks blocking JOIN vw_process_lock blocked ON ((((((((((((blocked.locktype = blocking.locktype) AND (NOT (blocked.database IS DISTINCT FROM blocking.database))) AND (NOT (blocked.relation IS DISTINCT FROM blocking.relation))) AND (NOT (blocked.page IS DISTINCT FROM blocking.page))) AND (NOT (blocked.tuple IS DISTINCT FROM blocking.tuple))) AND (NOT (blocked.virtualxid IS DISTINCT FROM blocking.virtualxid))) AND (NOT (blocked.transactionid IS DISTINCT FROM blocking.transactionid))) AND (NOT (blocked.classid IS DISTINCT FROM blocking.classid))) AND (NOT (blocked.objid IS DISTINCT FROM blocking.objid))) AND (NOT (blocked.objsubid IS DISTINCT FROM blocking.objsubid))) AND (blocked.pid <> blocking.pid)))) WHERE (blocking.granted AND (NOT blocked.granted)) ORDER BY blocking.pid, blocked.pid; ALTER TABLE _utility.vw_process_block OWNER TO postgres; -- -- Name: vw_process_full; Type: VIEW; Schema: _utility; Owner: postgres -- CREATE VIEW vw_process_full AS SELECT pg_stat_activity.datname, pg_stat_activity.pid, pg_stat_activity.usename, pg_stat_activity.application_name, pg_stat_activity.client_addr, pg_stat_activity.backend_start, pg_stat_activity.xact_start, pg_stat_activity.query_start, pg_stat_activity.state_change, pg_stat_activity.waiting, pg_stat_activity.state, pg_stat_activity.query, vw_process_block.blocking_pid, pg_stat_activity_blocking.usename AS blocking_usename, pg_stat_activity_blocking.application_name AS blocking_application_name, pg_stat_activity_blocking.client_addr AS blocking_client_addr, pg_stat_activity_blocking.backend_start AS blocking_backend_start, pg_stat_activity_blocking.xact_start AS blocking_xact_start, pg_stat_activity_blocking.query_start AS blocking_query_start, pg_stat_activity_blocking.state_change AS blocking_state_change, pg_stat_activity_blocking.waiting AS blocking_waiting, pg_stat_activity_blocking.state AS blocking_state, pg_stat_activity_blocking.query AS blocking_query, vw_process_block.blocking_mode, vw_process_block.blocked_mode, pg_namespace.nspname AS blocking_relation_schema, pg_class.relname AS blocking_relation_name FROM ((((process_list() pg_stat_activity(datid, datname, pid, usesysid, usename, application_name, client_addr, client_hostname, client_port, backend_start, xact_start, query_start, state_change, waiting, state, query) LEFT JOIN vw_process_block ON ((vw_process_block.blocked_pid = pg_stat_activity.pid))) LEFT JOIN pg_stat_activity pg_stat_activity_blocking ON ((pg_stat_activity_blocking.pid = vw_process_block.blocking_pid))) LEFT JOIN pg_class ON ((pg_class.oid = vw_process_block.relation))) LEFT JOIN pg_namespace ON ((pg_namespace.oid = pg_class.relnamespace))); ALTER TABLE _utility.vw_process_full OWNER TO postgres; -- -- Name: public; Type: ACL; Schema: -; Owner: postgres -- REVOKE ALL ON SCHEMA public FROM PUBLIC; REVOKE ALL ON SCHEMA public FROM postgres; GRANT ALL ON SCHEMA public TO postgres; GRANT ALL ON SCHEMA public TO PUBLIC; -- -- PostgreSQL database dump complete --