explain.depesz.com

PostgreSQL's explain analyze made readable

Result: Rpx6

Settings

Optimization(s) for this plan:

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

Gather (cost=485,116.50..825,713.10 rows=269 width=362) (actual rows= loops=)

  • Workers Planned: 2
  • JIT:
  • Functions: 76
  • Options: Inlining true, Optimization true, Expressions true, Deforming true
2. 0.000 0.000 ↓ 0.0

Hash Left Join (cost=484,116.50..824,686.20 rows=112 width=362) (actual rows= loops=)

  • Hash Cond: ((social_blueprints_1.id = promotions.social_blueprint_id) AND (social_blueprints_1.account_id = promotions.account_id))
  • Filter: (COALESCE(promotions.status, ('published'::promotion_status), ('approved'::promotion_status), 'idea'::promotion_status) = 'approved'::promotion_status)
3. 0.000 0.000 ↓ 0.0

Parallel Hash Left Join (cost=482,640.63..823,042.14 rows=22,423 width=378) (actual rows= loops=)

  • Hash Cond: ((articles.id = workflow_task_milestones.article_id) AND (social_blueprints_1.account_id = workflow_tasks.account_id) AND (social_blueprints_1.account_id = workflow_task_milestones.account_id))
4. 0.000 0.000 ↓ 0.0

Parallel Hash Left Join (cost=240,903.55..573,838.79 rows=22,423 width=378) (actual rows= loops=)

  • Hash Cond: ((articles.id = workflow_task_milestones_1.article_id) AND (social_blueprints_1.account_id = workflow_tasks_1.account_id) AND (social_blueprints_1.account_id = workflow_task_milestones_1.account_id))
5. 0.000 0.000 ↓ 0.0

Nested Loop Left Join (cost=0.86..325,694.84 rows=22,423 width=374) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.43..247,941.44 rows=22,423 width=370) (actual rows= loops=)

7. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on social_blueprints (cost=0.00..129,868.41 rows=22,423 width=362) (actual rows= loops=)

  • Filter: (auto_post AND (scheduled_at <= '2020-05-20 12:24:52.472193'::timestamp without time zone))
8. 0.000 0.000 ↓ 0.0

Index Scan using social_blueprints_pkey on social_blueprints social_blueprints_1 (cost=0.43..5.27 rows=1 width=8) (actual rows= loops=)

  • Index Cond: (id = social_blueprints.id)
9. 0.000 0.000 ↓ 0.0

Index Scan using index_articles_on_social_blueprint_id on articles (cost=0.43..3.46 rows=1 width=12) (actual rows= loops=)

  • Index Cond: (social_blueprint_id = social_blueprints_1.id)
  • Filter: (account_id = social_blueprints_1.account_id)
10. 0.000 0.000 ↓ 0.0

Parallel Hash (cost=218,905.62..218,905.62 rows=982,747 width=16) (actual rows= loops=)

11. 0.000 0.000 ↓ 0.0

Parallel Hash Join (cost=1,933.62..218,905.62 rows=982,747 width=16) (actual rows= loops=)

  • Hash Cond: (workflow_task_milestones_1.workflow_task_id = workflow_tasks_1.id)
12. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on workflow_task_milestones workflow_task_milestones_1 (cost=0.00..202,224.40 rows=5,617,876 width=12) (actual rows= loops=)

  • Filter: (completed_at IS NOT NULL)
13. 0.000 0.000 ↓ 0.0

Parallel Hash (cost=1,812.40..1,812.40 rows=9,698 width=8) (actual rows= loops=)

14. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on workflow_tasks workflow_tasks_1 (cost=0.00..1,812.40 rows=9,698 width=8) (actual rows= loops=)

  • Filter: as_approved
15. 0.000 0.000 ↓ 0.0

Parallel Hash (cost=218,910.19..218,910.19 rows=1,019,822 width=16) (actual rows= loops=)

16. 0.000 0.000 ↓ 0.0

Parallel Hash Join (cost=1,938.20..218,910.19 rows=1,019,822 width=16) (actual rows= loops=)

  • Hash Cond: (workflow_task_milestones.workflow_task_id = workflow_tasks.id)
17. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on workflow_task_milestones (cost=0.00..202,224.40 rows=5,617,876 width=12) (actual rows= loops=)

  • Filter: (completed_at IS NOT NULL)
18. 0.000 0.000 ↓ 0.0

Parallel Hash (cost=1,812.40..1,812.40 rows=10,064 width=8) (actual rows= loops=)

19. 0.000 0.000 ↓ 0.0

Parallel Seq Scan on workflow_tasks (cost=0.00..1,812.40 rows=10,064 width=8) (actual rows= loops=)

  • Filter: as_publish_date
20. 0.000 0.000 ↓ 0.0

Hash (cost=857.35..857.35 rows=41,235 width=12) (actual rows= loops=)

21. 0.000 0.000 ↓ 0.0

Seq Scan on promotions (cost=0.00..857.35 rows=41,235 width=12) (actual rows= loops=)