explain.depesz.com

PostgreSQL's explain analyze made readable

Result: T3VC : Optimization for: Optimization for: plan #vUH7; plan #Bfud

Settings

Optimization path:

# exclusive inclusive rows x rows loops node
1. 164.771 2,492.541 ↑ 7.8 4 1

Gather (cost=50,753.26..516,431.30 rows=31 width=10,389) (actual time=2,492.535..2,492.541 rows=4 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
2. 0.006 2,327.770 ↑ 13.0 1 3 / 3

Hash Left Join (cost=49,753.26..515,428.20 rows=13 width=10,389) (actual time=2,139.699..2,327.770 rows=1 loops=3)

  • Hash Cond: (t0.role_id = t3.id)
3. 0.009 2,327.714 ↑ 13.0 1 3 / 3

Hash Left Join (cost=49,750.75..515,425.52 rows=13 width=8,973) (actual time=2,139.645..2,327.714 rows=1 loops=3)

  • Hash Cond: (t0.proc_id = t2.id)
4. 0.003 2,327.636 ↑ 13.0 1 3 / 3

Nested Loop Left Join (cost=49,748.43..515,423.05 rows=13 width=4,356) (actual time=2,139.567..2,327.636 rows=1 loops=3)

5. 0.005 2,327.625 ↑ 13.0 1 3 / 3

Nested Loop (cost=49,748.29..515,421.00 rows=13 width=4,105) (actual time=2,139.559..2,327.625 rows=1 loops=3)

6. 1,103.099 2,327.591 ↑ 13.0 1 3 / 3

Hash Join (cost=49,748.00..515,417.02 rows=13 width=362) (actual time=2,139.540..2,327.591 rows=1 loops=3)

  • Hash Cond: (t1.card_id = t5.id)
  • Join Filter: ((t1.card_id = 'ff89dc2a-0a46-ece0-841e-216cc841eeaa'::uuid) OR (t5.family_card_id = 'ff89dc2a-0a46-ece0-841e-216cc841eeaa'::uuid))
  • Rows Removed by Join Filter: 1,140,455
7. 826.868 826.868 ↑ 1.8 1,140,474 3 / 3

Parallel Seq Scan on wf_card_role t1 (cost=0.00..221,115.81 rows=2,106,281 width=362) (actual time=199.011..826.868 rows=1,140,474 loops=3)

  • Filter: (delete_ts IS NULL)
8. 142.336 397.624 ↑ 1.0 855,890 3 / 3

Hash (cost=33,197.03..33,197.03 rows=855,918 width=32) (actual time=397.624..397.624 rows=855,890 loops=3)

  • Buckets: 131,072 Batches: 16 Memory Usage: 3,529kB
9. 255.288 255.288 ↑ 1.0 855,890 3 / 3

Seq Scan on wf_card t5 (cost=0.00..33,197.03 rows=855,918 width=32) (actual time=0.127..255.288 rows=855,890 loops=3)

  • Filter: (delete_ts IS NULL)
  • Rows Removed by Filter: 518
10. 0.029 0.029 ↑ 1.0 1 4 / 3

Index Scan using sec_user_pkey on sec_user t4 (cost=0.29..0.31 rows=1 width=3,743) (actual time=0.022..0.022 rows=1 loops=4)

  • Index Cond: (id = t1.user_id)
  • Filter: ((delete_ts IS NULL) AND active)
11. 0.008 0.008 ↑ 1.0 1 4 / 3

Index Scan using wf_proc_role_pkey on wf_proc_role t0 (cost=0.14..0.16 rows=1 width=251) (actual time=0.006..0.006 rows=1 loops=4)

  • Index Cond: (id = t1.proc_role_id)
12. 0.005 0.069 ↑ 1.8 8 1 / 3

Hash (cost=2.14..2.14 rows=14 width=4,617) (actual time=0.207..0.207 rows=8 loops=1)

13. 0.064 0.064 ↑ 1.8 8 1 / 3

Seq Scan on wf_proc t2 (cost=0.00..2.14 rows=14 width=4,617) (actual time=0.186..0.192 rows=8 loops=1)

14. 0.007 0.050 ↓ 1.0 24 1 / 3

Hash (cost=2.23..2.23 rows=23 width=1,416) (actual time=0.149..0.149 rows=24 loops=1)

15. 0.043 0.043 ↓ 1.0 24 1 / 3

Seq Scan on sec_role t3 (cost=0.00..2.23 rows=23 width=1,416) (actual time=0.118..0.128 rows=24 loops=1)