explain.depesz.com

PostgreSQL's explain analyze made readable

Result: ZfUr : test

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

Nested Loop (cost=9,063.11..20,575.75 rows=1 width=258) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Nested Loop (cost=8,927.06..14,132.10 rows=46 width=4) (actual rows= loops=)

3. 0.000 0.000 ↓ 0.0

Index Scan using idx_tags_tag on tags (cost=0.29..8.30 rows=1 width=8) (actual rows= loops=)

  • Index Cond: (tag = 'bd-2nd-pass'::text)
4. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on task_tags (cost=8,926.77..14,107.32 rows=1,648 width=8) (actual rows= loops=)

  • Recheck Cond: ((tag_id = tags.id) AND (type = 'QUEUE'::text))
5. 0.000 0.000 ↓ 0.0

BitmapAnd (cost=8,926.77..8,926.77 rows=1,648 width=0) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on idx_task_tags_tag_id (cost=0.00..231.55 rows=12,682 width=0) (actual rows= loops=)

  • Index Cond: (tag_id = tags.id)
7. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on idx_task_tags_type (cost=0.00..8,576.31 rows=473,050 width=0) (actual rows= loops=)

  • Index Cond: (type = 'QUEUE'::text)
8. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on tasks (cost=136.05..140.07 rows=1 width=258) (actual rows= loops=)

  • Recheck Cond: ((root_id = task_tags.task_id) AND (type = 'VegnetPlusMerge'::text) AND (status = 'started'::text))
9. 0.000 0.000 ↓ 0.0

BitmapAnd (cost=136.05..136.05 rows=1 width=0) (actual rows= loops=)

10. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on idx_tasks_root_id (cost=0.00..4.48 rows=97 width=0) (actual rows= loops=)

  • Index Cond: (root_id = task_tags.task_id)
11. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on ix_tasks_type_status_updated (cost=0.00..130.57 rows=3,000 width=0) (actual rows= loops=)

  • Index Cond: ((type = 'VegnetPlusMerge'::text) AND (status = 'started'::text))