Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add citus_lock_waits to show locked distributed queries
- Loading branch information
Showing
10 changed files
with
994 additions
and
5 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
# Citus extension | ||
comment = 'Citus distributed database' | ||
default_version = '8.0-6' | ||
default_version = '8.0-7' | ||
module_pathname = '$libdir/citus' | ||
relocatable = false | ||
schema = pg_catalog |
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
/* citus--8.0-6--8.0-7 */ | ||
SET search_path = 'pg_catalog'; | ||
|
||
CREATE VIEW citus.citus_lock_waits AS | ||
|
||
WITH | ||
citus_dist_stat_activity AS | ||
( | ||
SELECT * FROM citus_dist_stat_activity | ||
), | ||
unique_global_wait_edges AS | ||
( | ||
SELECT DISTINCT ON(waiting_node_id, waiting_transaction_num, blocking_node_id, blocking_transaction_num) * FROM dump_global_wait_edges() | ||
), | ||
citus_dist_stat_activity_with_node_id AS | ||
( | ||
SELECT | ||
citus_dist_stat_activity.*, (CASE citus_dist_stat_activity.master_query_host_name WHEN 'coordinator_host' THEN 0 ELSE pg_dist_node.nodeid END) as initiator_node_id | ||
FROM | ||
citus_dist_stat_activity LEFT JOIN pg_dist_node | ||
ON | ||
citus_dist_stat_activity.master_query_host_name = pg_dist_node.nodename AND | ||
citus_dist_stat_activity.master_query_host_port = pg_dist_node.nodeport | ||
) | ||
SELECT | ||
waiting.pid AS waiting_pid, | ||
blocking.pid AS blocking_pid, | ||
waiting.query AS blocked_statement, | ||
blocking.query AS current_statement_in_blocking_process, | ||
waiting.initiator_node_id AS waiting_node_id, | ||
blocking.initiator_node_id AS blocking_node_id, | ||
waiting.master_query_host_name AS waiting_node_name, | ||
blocking.master_query_host_name AS blocking_node_name, | ||
waiting.master_query_host_port AS waiting_node_port, | ||
blocking.master_query_host_port AS blocking_node_port | ||
FROM | ||
unique_global_wait_edges | ||
JOIN | ||
citus_dist_stat_activity_with_node_id waiting ON (unique_global_wait_edges.waiting_transaction_num = waiting.transaction_number AND unique_global_wait_edges.waiting_node_id = waiting.initiator_node_id) | ||
JOIN | ||
citus_dist_stat_activity_with_node_id blocking ON (unique_global_wait_edges.blocking_transaction_num = blocking.transaction_number AND unique_global_wait_edges.blocking_node_id = blocking.initiator_node_id); | ||
|
||
ALTER VIEW citus.citus_lock_waits SET SCHEMA pg_catalog; | ||
GRANT SELECT ON pg_catalog.citus_lock_waits TO PUBLIC; | ||
|
||
RESET search_path; |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
# Citus extension | ||
comment = 'Citus distributed database' | ||
default_version = '8.0-6' | ||
default_version = '8.0-7' | ||
module_pathname = '$libdir/citus' | ||
relocatable = false | ||
schema = pg_catalog |
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
Oops, something went wrong.