explain.depesz.com

PostgreSQL's explain analyze made readable

Result: 0g2a

Settings
# exclusive inclusive rows x rows loops node
1. 52.059 2,944.293 ↑ 1.0 53,966 1

Gather (cost=13,923.05..138,572.86 rows=55,549 width=3,577) (actual time=249.506..2,944.293 rows=53,966 loops=1)

  • Workers Planned: 3
  • Workers Launched: 0
2. 91.457 2,892.234 ↓ 3.0 53,966 1

Hash Left Join (cost=12,923.05..132,017.96 rows=17,919 width=3,577) (actual time=241.247..2,892.234 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = phonecrede4_.phone_cred_id)
3. 79.551 2,732.396 ↓ 3.0 53,966 1

Nested Loop Left Join (cost=9,674.02..128,721.89 rows=17,919 width=3,556) (actual time=171.949..2,732.396 rows=53,966 loops=1)

4. 78.159 2,436.981 ↓ 3.0 53,966 1

Nested Loop Left Join (cost=9,673.60..120,616.95 rows=17,919 width=3,355) (actual time=171.921..2,436.981 rows=53,966 loops=1)

5. 53.129 2,250.890 ↓ 3.0 53,966 1

Hash Left Join (cost=9,673.17..112,151.87 rows=17,919 width=3,208) (actual time=171.893..2,250.890 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_19_.ws_user_id)
6. 60.721 2,197.419 ↓ 3.0 53,966 1

Hash Left Join (cost=9,651.28..112,082.95 rows=17,919 width=3,072) (actual time=171.526..2,197.419 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_18_.dyn_tm_id)
7. 75.581 2,134.614 ↓ 3.0 53,966 1

Hash Left Join (cost=9,492.71..111,877.34 rows=17,919 width=3,021) (actual time=169.378..2,134.614 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_17_.grp_id)
8. 60.896 1,995.380 ↓ 3.0 53,966 1

Hash Left Join (cost=6,683.90..109,021.49 rows=17,919 width=2,891) (actual time=105.314..1,995.380 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_16_.tm_id)
9. 36.459 1,856.092 ↓ 3.0 53,966 1

Hash Left Join (cost=3,336.05..105,626.60 rows=17,919 width=2,203) (actual time=26.444..1,856.092 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_15_.dvc_id)
10. 37.776 1,819.629 ↓ 3.0 53,966 1

Hash Left Join (cost=3,321.55..105,565.06 rows=17,919 width=2,190) (actual time=26.432..1,819.629 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_14_.dvc_id)
11. 38.677 1,781.849 ↓ 3.0 53,966 1

Hash Left Join (cost=3,307.50..105,503.98 rows=17,919 width=2,104) (actual time=26.422..1,781.849 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_13_.dvc_id)
12. 39.460 1,743.168 ↓ 3.0 53,966 1

Hash Left Join (cost=3,294.57..105,444.02 rows=17,919 width=1,878) (actual time=26.410..1,743.168 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_12_.dvc_id)
13. 68.694 1,703.704 ↓ 3.0 53,966 1

Nested Loop Left Join (cost=3,281.42..105,383.83 rows=17,919 width=1,704) (actual time=26.396..1,703.704 rows=53,966 loops=1)

14. 38.008 1,527.078 ↓ 3.0 53,966 1

Hash Left Join (cost=3,281.00..97,082.73 rows=17,919 width=1,678) (actual time=26.380..1,527.078 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_10_.dvc_id)
15. 51.846 1,489.064 ↓ 3.0 53,966 1

Hash Left Join (cost=3,268.97..97,023.67 rows=17,919 width=1,217) (actual time=26.362..1,489.064 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_9_.dvc_id)
16. 59.401 1,422.844 ↓ 3.0 53,966 1

Nested Loop Left Join (cost=1,972.91..95,680.57 rows=17,919 width=1,195) (actual time=11.944..1,422.844 rows=53,966 loops=1)

17. 46.965 1,255.511 ↓ 3.0 53,966 1

Hash Left Join (cost=1,972.49..87,745.49 rows=17,919 width=1,174) (actual time=11.932..1,255.511 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_7_.dvc_id)
18. 47.827 1,207.282 ↓ 3.0 53,966 1

Hash Left Join (cost=1,798.02..87,523.98 rows=17,919 width=1,154) (actual time=10.653..1,207.282 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_6_.dvc_id)
19. 49.483 1,157.603 ↓ 3.0 53,966 1

Hash Left Join (cost=1,459.29..87,138.22 rows=17,919 width=961) (actual time=8.787..1,157.603 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_5_.dvc_id)
20. 33.877 1,104.036 ↓ 3.0 53,966 1

Hash Left Join (cost=915.29..86,547.18 rows=17,919 width=828) (actual time=4.690..1,104.036 rows=53,966 loops=1)

  • Hash Cond: (recipienti1_.recipient_id = recipienti1_4_.dvc_id)
21. 62.927 1,070.153 ↓ 3.0 53,966 1

Nested Loop Left Join (cost=902.14..86,487.00 rows=17,919 width=602) (actual time=4.661..1,070.153 rows=53,966 loops=1)

22. 23.249 899.294 ↓ 3.0 53,966 1

Nested Loop Left Join (cost=901.72..78,418.19 rows=17,919 width=570) (actual time=4.652..899.294 rows=53,966 loops=1)

23. 51.979 714.147 ↓ 3.0 53,966 1

Nested Loop Left Join (cost=901.29..69,676.13 rows=17,919 width=428) (actual time=4.640..714.147 rows=53,966 loops=1)

24. 91.716 392.338 ↓ 3.0 53,966 1

Nested Loop Left Join (cost=900.86..61,512.03 rows=17,919 width=249) (actual time=4.622..392.338 rows=53,966 loops=1)

25. 26.386 30.792 ↓ 3.0 53,966 1

Parallel Bitmap Heap Scan on tm_mbrships members0_ (cost=900.43..26,655.42 rows=17,919 width=56) (actual time=4.595..30.792 rows=53,966 loops=1)

  • Recheck Cond: (tm_id = '64398017'::bigint)
  • Heap Blocks: exact=1093
26. 4.406 4.406 ↑ 1.0 53,966 1

Bitmap Index Scan on idx_tm_mbrships1 (cost=0.00..886.55 rows=55,549 width=0) (actual time=4.406..4.406 rows=53,966 loops=1)

  • Index Cond: (tm_id = '64398017'::bigint)
27. 269.830 269.830 ↑ 1.0 1 53,966

Index Scan using recipients_pk on recipients recipienti1_ (cost=0.43..1.95 rows=1 width=193) (actual time=0.005..0.005 rows=1 loops=53,966)

  • Index Cond: (members0_.recipient_id = recipient_id)
28. 269.830 269.830 ↑ 1.0 1 53,966

Index Scan using persons_pk on persons recipienti1_1_ (cost=0.42..0.46 rows=1 width=179) (actual time=0.005..0.005 rows=1 loops=53,966)

  • Index Cond: (recipienti1_.recipient_id = person_id)
29. 161.898 161.898 ↓ 0.0 0 53,966

Index Scan using dvc_pk on dvc recipienti1_2_ (cost=0.43..0.49 rows=1 width=142) (actual time=0.003..0.003 rows=0 loops=53,966)

  • Index Cond: (recipienti1_.recipient_id = dvc_id)
30. 107.932 107.932 ↓ 0.0 0 53,966

Index Scan using email_dvc_dtl_pk on email_dvc_dtl recipienti1_3_ (cost=0.42..0.45 rows=1 width=32) (actual time=0.002..0.002 rows=0 loops=53,966)

  • Index Cond: (recipienti1_.recipient_id = dvc_id)
31. 0.000 0.006 ↓ 0.0 0 1

Hash (cost=11.40..11.40 rows=140 width=226) (actual time=0.006..0.006 rows=0 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
32. 0.006 0.006 ↓ 0.0 0 1

Seq Scan on bes_dvc_dtl recipienti1_4_ (cost=0.00..11.40 rows=140 width=226) (actual time=0.006..0.006 rows=0 loops=1)

33. 1.577 4.084 ↓ 1.0 7,652 1

Hash (cost=449.00..449.00 rows=7,600 width=133) (actual time=4.084..4.084 rows=7,652 loops=1)

  • Buckets: 8192 Batches: 1 Memory Usage: 1211kB
34. 2.507 2.507 ↓ 1.0 7,652 1

Seq Scan on apple_push_dvc_dtl recipienti1_5_ (cost=0.00..449.00 rows=7,600 width=133) (actual time=0.009..2.507 rows=7,652 loops=1)

35. 0.680 1.852 ↓ 1.1 3,186 1

Hash (cost=301.10..301.10 rows=3,010 width=193) (actual time=1.851..1.852 rows=3,186 loops=1)

  • Buckets: 4096 Batches: 1 Memory Usage: 743kB
36. 1.172 1.172 ↓ 1.1 3,186 1

Seq Scan on gcm_push_dvc_dtl recipienti1_6_ (cost=0.00..301.10 rows=3,010 width=193) (actual time=0.009..1.172 rows=3,186 loops=1)

37. 0.496 1.264 ↓ 1.0 3,542 1

Hash (cost=130.32..130.32 rows=3,532 width=20) (actual time=1.264..1.264 rows=3,542 loops=1)

  • Buckets: 4096 Batches: 1 Memory Usage: 226kB
38. 0.768 0.768 ↓ 1.0 3,542 1

Seq Scan on txt_page_dvc_dtl recipienti1_7_ (cost=0.00..130.32 rows=3,532 width=20) (actual time=0.023..0.768 rows=3,542 loops=1)

39. 107.932 107.932 ↓ 0.0 0 53,966

Index Scan using txt_phone_dvc_dtl_pk on txt_phone_dvc_dtl recipienti1_8_ (cost=0.42..0.44 rows=1 width=21) (actual time=0.002..0.002 rows=0 loops=53,966)

  • Index Cond: (recipienti1_.recipient_id = dvc_id)
40. 5.117 14.374 ↑ 1.0 27,424 1

Hash (cost=953.25..953.25 rows=27,425 width=22) (actual time=14.374..14.374 rows=27,424 loops=1)

  • Buckets: 32768 Batches: 1 Memory Usage: 1756kB
41. 9.257 9.257 ↑ 1.0 27,424 1

Seq Scan on fax_dvc_dtl recipienti1_9_ (cost=0.00..953.25 rows=27,425 width=22) (actual time=0.014..9.257 rows=27,424 loops=1)

42. 0.000 0.006 ↓ 0.0 0 1

Hash (cost=10.90..10.90 rows=90 width=461) (actual time=0.006..0.006 rows=0 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
43. 0.006 0.006 ↓ 0.0 0 1

Seq Scan on num_page_dvc_dtl recipienti1_10_ (cost=0.00..10.90 rows=90 width=461) (actual time=0.006..0.006 rows=0 loops=1)

44. 107.932 107.932 ↓ 0.0 0 53,966

Index Scan using voc_dvc_dtl_pk on voc_dvc_dtl recipienti1_11_ (cost=0.43..0.46 rows=1 width=26) (actual time=0.002..0.002 rows=0 loops=53,966)

  • Index Cond: (recipienti1_.recipient_id = dvc_id)
45. 0.000 0.004 ↓ 0.0 0 1

Hash (cost=11.40..11.40 rows=140 width=174) (actual time=0.004..0.004 rows=0 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
46. 0.004 0.004 ↓ 0.0 0 1

Seq Scan on voice_ivr_dvc_dtl recipienti1_12_ (cost=0.00..11.40 rows=140 width=174) (actual time=0.004..0.004 rows=0 loops=1)

47. 0.000 0.004 ↓ 0.0 0 1

Hash (cost=11.30..11.30 rows=130 width=226) (actual time=0.004..0.004 rows=0 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
48. 0.004 0.004 ↓ 0.0 0 1

Seq Scan on im_dvc_dtl recipienti1_13_ (cost=0.00..11.30 rows=130 width=226) (actual time=0.004..0.004 rows=0 loops=1)

49. 0.000 0.004 ↓ 0.0 0 1

Hash (cost=11.80..11.80 rows=180 width=86) (actual time=0.004..0.004 rows=0 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
50. 0.004 0.004 ↓ 0.0 0 1

Seq Scan on virtual_dvc_dtl recipienti1_14_ (cost=0.00..11.80 rows=180 width=86) (actual time=0.004..0.004 rows=0 loops=1)

51. 0.000 0.004 ↓ 0.0 0 1

Hash (cost=12.00..12.00 rows=200 width=13) (actual time=0.004..0.004 rows=0 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 8kB
52. 0.004 0.004 ↓ 0.0 0 1

Seq Scan on gen_dvc_dtl recipienti1_15_ (cost=0.00..12.00 rows=200 width=13) (actual time=0.004..0.004 rows=0 loops=1)

53. 39.065 78.392 ↓ 1.0 71,726 1

Hash (cost=2,453.49..2,453.49 rows=71,549 width=688) (actual time=78.392..78.392 rows=71,726 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 10489kB
54. 39.327 39.327 ↓ 1.0 71,726 1

Seq Scan on tm recipienti1_16_ (cost=0.00..2,453.49 rows=71,549 width=688) (actual time=0.021..39.327 rows=71,726 loops=1)

55. 32.086 63.653 ↓ 1.0 59,902 1

Hash (cost=2,063.36..2,063.36 rows=59,636 width=130) (actual time=63.653..63.653 rows=59,902 loops=1)

  • Buckets: 65536 Batches: 1 Memory Usage: 8725kB
56. 31.567 31.567 ↓ 1.0 59,902 1

Seq Scan on grp recipienti1_17_ (cost=0.00..2,063.36 rows=59,636 width=130) (actual time=0.034..31.567 rows=59,902 loops=1)

57. 1.200 2.084 ↑ 1.0 4,228 1

Hash (cost=104.92..104.92 rows=4,292 width=51) (actual time=2.084..2.084 rows=4,228 loops=1)

  • Buckets: 8192 Batches: 1 Memory Usage: 401kB
58. 0.884 0.884 ↑ 1.0 4,228 1

Seq Scan on dyn_tms recipienti1_18_ (cost=0.00..104.92 rows=4,292 width=51) (actual time=0.012..0.884 rows=4,228 loops=1)

59. 0.176 0.342 ↑ 1.0 480 1

Hash (cost=15.84..15.84 rows=484 width=136) (actual time=0.342..0.342 rows=480 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 58kB
60. 0.166 0.166 ↑ 1.0 480 1

Seq Scan on ws_users recipienti1_19_ (cost=0.00..15.84 rows=484 width=136) (actual time=0.012..0.166 rows=480 loops=1)

61. 107.932 107.932 ↓ 0.0 0 53,966

Index Scan using idx_dvc_tf1 on dvc_tf devicetime2_ (cost=0.43..0.46 rows=1 width=147) (actual time=0.002..0.002 rows=0 loops=53,966)

  • Index Cond: (recipienti1_.recipient_id = dvc_id)
62. 215.864 215.864 ↑ 1.0 1 53,966

Index Scan using web_creds_pk on web_creds webcredent3_ (cost=0.42..0.45 rows=1 width=201) (actual time=0.004..0.004 rows=1 loops=53,966)

  • Index Cond: (recipienti1_.recipient_id = web_cred_id)
63. 35.384 68.381 ↑ 1.0 68,264 1

Hash (cost=2,395.68..2,395.68 rows=68,268 width=169) (actual time=68.381..68.381 rows=68,264 loops=1)

  • Buckets: 131072 Batches: 1 Memory Usage: 11133kB
64. 32.997 32.997 ↑ 1.0 68,264 1

Seq Scan on phone_creds phonecrede4_ (cost=0.00..2,395.68 rows=68,268 width=169) (actual time=0.014..32.997 rows=68,264 loops=1)