Last active
May 8, 2023 12:44
-
-
Save sebastianwebber/52039ad2ab7c039d22e7 to your computer and use it in GitHub Desktop.
Show locked tables in postgreSQL
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- tested in PostgreSQL 8.4.4 | |
DROP VIEW IF EXISTS vw_all_table_locks CASCADE; | |
CREATE VIEW vw_all_table_locks AS | |
SELECT | |
pg_namespace.nspname as schemaname, | |
pg_class.relname as tablename, | |
pg_locks.mode as lock_type, | |
age(now(),pg_stat_activity.query_start) AS time_running | |
FROM pg_class | |
JOIN pg_locks on pg_locks.relation = pg_class.oid | |
JOIN pg_database on pg_database.oid = pg_locks.database | |
JOIN pg_namespace on pg_namespace.oid = pg_class.relnamespace | |
JOIN pg_stat_activity on pg_stat_activity.procpid = pg_locks.pid | |
WHERE pg_class.relkind = 'r' | |
AND pg_database.datname = current_database(); | |
DROP VIEW IF EXISTS vw_user_table_locks; | |
CREATE VIEW vw_user_table_locks AS | |
SELECT schemaname, tablename, lock_type, time_running FROM vw_all_table_locks | |
WHERE schemaname NOT LIKE 'pg_%'; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
pg_stat_activity.procpid =>> pg_stat_activity.pid