explain.depesz.com

PostgreSQL's explain analyze made readable

Result: z0tW

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

Update on issues (cost=2.28..20,048.23 rows=43 width=1,358) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Nested Loop (cost=2.28..20,048.23 rows=43 width=1,358) (actual rows= loops=)

3. 0.000 0.000 ↓ 0.0

Subquery Scan on grouped_counts (cost=1.72..19,807.76 rows=67 width=96) (actual rows= loops=)

4. 0.000 0.000 ↓ 0.0

GroupAggregate (cost=1.72..19,807.09 rows=67 width=36) (actual rows= loops=)

  • Group Key: "*SELECT* 1".blocking_issue_id
  • Filter: (sum("*SELECT* 1".blocked_count) > '0'::numeric)
5. 0.000 0.000 ↓ 0.0

Merge Append (cost=1.72..19,788.49 rows=2,014 width=12) (actual rows= loops=)

  • Sort Key: "*SELECT* 1".blocking_issue_id
6. 0.000 0.000 ↓ 0.0

Subquery Scan on *SELECT* 1 (cost=0.85..5,510.12 rows=556 width=12) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

GroupAggregate (cost=0.85..5,504.56 rows=556 width=12) (actual rows= loops=)

  • Group Key: issue_links.source_id
  • Filter: (count(*) > 0)
8. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.85..5,471.22 rows=1,667 width=4) (actual rows= loops=)

9. 0.000 0.000 ↓ 0.0

Index Only Scan using tmp_idx_blocking_type_links on issue_links (cost=0.29..89.45 rows=2,585 width=4) (actual rows= loops=)

  • Index Cond: ((source_id >= 1,220,746) AND (source_id <= 10,381,817))
10. 0.000 0.000 ↓ 0.0

Index Only Scan using tmp_idx_index_issues_with_outdate_blocking_count on issues issues_1 (cost=0.56..2.08 rows=1 width=4) (actual rows= loops=)

  • Index Cond: (id = issue_links.source_id)
11. 0.000 0.000 ↓ 0.0

Subquery Scan on *SELECT* 2 (cost=0.85..14,258.22 rows=1,458 width=12) (actual rows= loops=)

12. 0.000 0.000 ↓ 0.0

GroupAggregate (cost=0.85..14,243.64 rows=1,458 width=12) (actual rows= loops=)

  • Group Key: issue_links_1.target_id
  • Filter: (count(*) > 0)
13. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.85..14,156.16 rows=4,374 width=4) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Index Only Scan using tmp_idx_blocked_by_type_links on issue_links issue_links_1 (cost=0.29..215.65 rows=6,782 width=4) (actual rows= loops=)

  • Index Cond: ((target_id >= 1,220,746) AND (target_id <= 10,381,817))
15. 0.000 0.000 ↓ 0.0

Index Only Scan using tmp_idx_index_issues_with_outdate_blocking_count on issues issues_2 (cost=0.56..2.06 rows=1 width=4) (actual rows= loops=)

  • Index Cond: (id = issue_links_1.target_id)
16. 0.000 0.000 ↓ 0.0

Index Scan using tmp_idx_index_issues_with_outdate_blocking_count on issues (cost=0.56..3.59 rows=1 width=1,266) (actual rows= loops=)

  • Index Cond: (id = grouped_counts.blocking_issue_id)
  • Filter: ((blocking_issues_count = 0) AND (state_id = 1))