explain.depesz.com

PostgreSQL's explain analyze made readable

Result: dLai

Settings
# exclusive inclusive rows x rows loops node
1. 118.586 185,805.170 ↓ 14,714.0 14,714 1

Nested Loop Left Join (cost=5,804.16..16,504.97 rows=1 width=542) (actual time=255.727..185,805.170 rows=14,714 loops=1)

2. 20.274 185,657.156 ↓ 14,714.0 14,714 1

Nested Loop (cost=5,804.02..16,504.77 rows=1 width=468) (actual time=255.703..185,657.156 rows=14,714 loops=1)

3. 20.327 185,592.740 ↓ 14,714.0 14,714 1

Nested Loop (cost=5,803.88..16,504.59 rows=1 width=436) (actual time=255.692..185,592.740 rows=14,714 loops=1)

4. 9.962 185,528.271 ↓ 14,714.0 14,714 1

Nested Loop (cost=5,803.75..16,504.37 rows=1 width=440) (actual time=255.676..185,528.271 rows=14,714 loops=1)

5. 7.675 7.675 ↑ 1.0 1 1

Index Scan using utilisateur_lower_login_idx on utilisateur u (cost=0.29..8.30 rows=1 width=4) (actual time=7.671..7.675 rows=1 loops=1)

  • Index Cond: (lower(login) = lower(("current_user"())::text))
6. 22.917 185,510.634 ↓ 14,714.0 14,714 1

Nested Loop (cost=5,803.46..16,496.06 rows=1 width=444) (actual time=248.001..185,510.634 rows=14,714 loops=1)

7. 53.518 185,281.721 ↓ 14,714.0 14,714 1

Nested Loop (cost=5,803.04..16,487.34 rows=1 width=453) (actual time=247.963..185,281.721 rows=14,714 loops=1)

8. 5,346.551 185,124.092 ↓ 14,873.0 14,873 1

Nested Loop Left Join (cost=5,802.76..16,487.04 rows=1 width=446) (actual time=247.942..185,124.092 rows=14,873 loops=1)

  • Join Filter: ((t.vendor_number_creancier = f_1.vendor_number) AND (t.vendor_site_code_creancier = lf_1.vendor_site_code))
  • Rows Removed by Join Filter: 98145878
9. 537.814 780.986 ↓ 14,873.0 14,873 1

Gather (cost=3,061.95..8,523.90 rows=1 width=409) (actual time=96.931..780.986 rows=14,873 loops=1)

  • Workers Planned: 2
  • Workers Launched: 2
10. 30.285 243.172 ↓ 4,958.0 4,958 3

Nested Loop (cost=2,061.95..7,523.80 rows=1 width=409) (actual time=109.437..243.172 rows=4,958 loops=3)

11. 63.749 212.882 ↓ 4,958.0 4,958 3

Nested Loop (cost=2,061.81..7,523.51 rows=1 width=396) (actual time=109.416..212.882 rows=4,958 loops=3)

  • Join Filter: (t.vendor_number = f.vendor_number)
  • Rows Removed by Join Filter: 8249
12. 12.280 149.129 ↓ 13.8 13,207 3

Hash Join (cost=2,061.52..6,951.85 rows=960 width=373) (actual time=108.765..149.129 rows=13,207 loops=3)

  • Hash Cond: ((t.psa = psa.psa) AND (pceb.id_sagir_programme = psa.id_sagir_programme))
13. 18.592 136.806 ↓ 12.0 13,207 3

Hash Join (cost=2,058.85..6,932.44 rows=1,105 width=363) (actual time=108.660..136.806 rows=13,207 loops=3)

  • Hash Cond: (lf.vendor_site_code = t.vendor_site_code)
14. 4.969 11.597 ↑ 1.2 2,200 3

Hash Join (cost=199.30..4,931.40 rows=2,746 width=26) (actual time=1.947..11.597 rows=2,200 loops=3)

  • Hash Cond: (lf.vendor_site_id = slfmi.vendor_site_id)
15. 4.750 4.750 ↑ 1.2 10,283 3

Parallel Seq Scan on sagir_lieux_fournisseurs_mo lf (cost=0.00..4,640.43 rows=12,843 width=29) (actual time=0.008..4.750 rows=10,283 loops=3)

16. 0.976 1.878 ↓ 1.0 6,599 3

Hash (cost=116.91..116.91 rows=6,591 width=13) (actual time=1.878..1.878 rows=6,599 loops=3)

  • Buckets: 8192 Batches: 1 Memory Usage: 336kB
17. 0.902 0.902 ↓ 1.0 6,599 3

Seq Scan on sagir_lieux_fournisseurs_mo_informations_supplementaires slfmi (cost=0.00..116.91 rows=6,591 width=13) (actual time=0.010..0.902 rows=6,599 loops=3)

18. 9.502 106.617 ↓ 3.3 15,342 3

Hash (cost=1,800.95..1,800.95 rows=4,688 width=353) (actual time=106.617..106.617 rows=15,342 loops=3)

  • Buckets: 16384 (originally 8192) Batches: 1 (originally 1) Memory Usage: 3222kB
19. 7.614 97.115 ↓ 3.3 15,342 3

Hash Join (cost=12.70..1,800.95 rows=4,688 width=353) (actual time=4.353..97.115 rows=15,342 loops=3)

  • Hash Cond: ((t.id_entite_budgetaire = pceb.id_entite_budgetaire) AND (t.id_contributeur = pceb.id_contributeur) AND (t.id_programme = p.id))
20. 9.739 89.414 ↓ 1.0 15,342 3

Hash Join (cost=7.38..1,524.24 rows=15,134 width=361) (actual time=4.256..89.414 rows=15,342 loops=3)

  • Hash Cond: (t.id_contributeur = c.id)
21. 4.261 78.703 ↓ 1.0 15,342 3

Hash Join (cost=6.34..1,399.28 rows=15,134 width=325) (actual time=3.274..78.703 rows=15,342 loops=3)

  • Hash Cond: (t.id_entite_budgetaire = eb.id)
22. 4.197 73.916 ↓ 1.0 15,342 3

Hash Join (cost=5.29..1,274.33 rows=15,134 width=289) (actual time=2.740..73.916 rows=15,342 loops=3)

  • Hash Cond: (t.code_retour_cheque = (erc.code)::text)
23. 4.199 69.290 ↓ 1.0 15,342 3

Hash Join (cost=4.25..1,149.37 rows=15,134 width=259) (actual time=2.299..69.290 rows=15,342 loops=3)

  • Hash Cond: (t.code_type_depense = (etd.code)::text)
24. 6.950 64.911 ↓ 1.0 15,342 3

Hash Join (cost=3.18..1,002.01 rows=15,134 width=229) (actual time=2.110..64.911 rows=15,342 loops=3)

  • Hash Cond: (t.code_mode_financement = (emf.code)::text)
25. 4.303 57.779 ↓ 1.0 15,342 3

Hash Join (cost=2.14..877.06 rows=15,134 width=199) (actual time=1.917..57.779 rows=15,342 loops=3)

  • Hash Cond: (t.code_mode_paiement = (emp.code)::text)
26. 13.182 53.316 ↓ 1.0 15,342 3

Hash Join (cost=1.07..729.70 rows=15,134 width=169) (actual time=1.746..53.316 rows=15,342 loops=3)

  • Hash Cond: (t.code_destinataire_paiement = (edp.code)::text)
27. 39.647 39.647 ↓ 1.0 15,342 3

Seq Scan on transactions t (cost=0.00..582.34 rows=15,134 width=142) (actual time=1.242..39.647 rows=15,342 loops=3)

28. 0.007 0.487 ↑ 1.0 3 3

Hash (cost=1.03..1.03 rows=3 width=64) (actual time=0.487..0.487 rows=3 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
29. 0.480 0.480 ↑ 1.0 3 3

Seq Scan on enum_destinataire_paiement edp (cost=0.00..1.03 rows=3 width=64) (actual time=0.479..0.480 rows=3 loops=3)

30. 0.006 0.160 ↑ 1.0 3 3

Hash (cost=1.03..1.03 rows=3 width=64) (actual time=0.160..0.160 rows=3 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
31. 0.154 0.154 ↑ 1.0 3 3

Seq Scan on enum_mode_paiement emp (cost=0.00..1.03 rows=3 width=64) (actual time=0.153..0.154 rows=3 loops=3)

32. 0.003 0.182 ↑ 1.0 2 3

Hash (cost=1.02..1.02 rows=2 width=64) (actual time=0.182..0.182 rows=2 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
33. 0.179 0.179 ↑ 1.0 2 3

Seq Scan on enum_mode_financement emf (cost=0.00..1.02 rows=2 width=64) (actual time=0.178..0.179 rows=2 loops=3)

34. 0.004 0.180 ↑ 1.0 3 3

Hash (cost=1.03..1.03 rows=3 width=64) (actual time=0.180..0.180 rows=3 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
35. 0.176 0.176 ↑ 1.0 3 3

Seq Scan on enum_type_depense etd (cost=0.00..1.03 rows=3 width=64) (actual time=0.176..0.176 rows=3 loops=3)

36. 0.006 0.429 ↑ 1.0 2 3

Hash (cost=1.02..1.02 rows=2 width=64) (actual time=0.429..0.429 rows=2 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
37. 0.423 0.423 ↑ 1.0 2 3

Seq Scan on enum_retour_cheque erc (cost=0.00..1.02 rows=2 width=64) (actual time=0.423..0.423 rows=2 loops=3)

38. 0.005 0.526 ↑ 1.0 2 3

Hash (cost=1.02..1.02 rows=2 width=36) (actual time=0.526..0.526 rows=2 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
39. 0.521 0.521 ↑ 1.0 2 3

Seq Scan on entite_budgetaire eb (cost=0.00..1.02 rows=2 width=36) (actual time=0.520..0.521 rows=2 loops=3)

40. 0.004 0.972 ↑ 1.0 2 3

Hash (cost=1.02..1.02 rows=2 width=36) (actual time=0.972..0.972 rows=2 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
41. 0.968 0.968 ↑ 1.0 2 3

Seq Scan on contributeur c (cost=0.00..1.02 rows=2 width=36) (actual time=0.966..0.968 rows=2 loops=3)

42. 0.021 0.087 ↓ 1.2 67 3

Hash (cost=4.32..4.32 rows=57 width=28) (actual time=0.087..0.087 rows=67 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 13kB
43. 0.024 0.066 ↓ 1.2 67 3

Hash Join (cost=2.04..4.32 rows=57 width=28) (actual time=0.048..0.066 rows=67 loops=3)

  • Hash Cond: (pceb.id_programme = p.id)
44. 0.020 0.020 ↓ 1.2 67 3

Seq Scan on programme_contributeur_entite_budgetaire pceb (cost=0.00..1.57 rows=57 width=16) (actual time=0.014..0.020 rows=67 loops=3)

45. 0.011 0.022 ↓ 1.1 49 3

Hash (cost=1.46..1.46 rows=46 width=12) (actual time=0.022..0.022 rows=49 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 11kB
46. 0.011 0.011 ↓ 1.1 49 3

Seq Scan on programme p (cost=0.00..1.46 rows=46 width=12) (actual time=0.006..0.011 rows=49 loops=3)

47. 0.019 0.043 ↓ 1.2 78 3

Hash (cost=1.67..1.67 rows=67 width=26) (actual time=0.043..0.043 rows=78 loops=3)

  • Buckets: 1024 Batches: 1 Memory Usage: 13kB
48. 0.024 0.024 ↓ 1.2 78 3

Seq Scan on sagir_psa psa (cost=0.00..1.67 rows=67 width=26) (actual time=0.015..0.024 rows=78 loops=3)

49. 0.004 0.004 ↑ 1.0 1 39,621

Index Scan using sagir_fournisseurs_mo_pk on sagir_fournisseurs_mo f (cost=0.29..0.58 rows=1 width=45) (actual time=0.004..0.004 rows=1 loops=39,621)

  • Index Cond: (vendor_id = lf.vendor_id)
50. 0.005 0.005 ↑ 1.0 1 14,873

Index Only Scan using sagir_psa_role_un on sagir_psa_role spr (cost=0.14..0.28 rows=1 width=21) (actual time=0.003..0.005 rows=1 loops=14,873)

  • Index Cond: (id_sagir_psa = psa.id)
  • Heap Fetches: 8
51. 26,147.622 178,996.555 ↓ 1.0 6,599 14,873

Hash Join (cost=2,740.81..7,864.28 rows=6,591 width=55) (actual time=0.014..12.035 rows=6,599 loops=14,873)

  • Hash Cond: (lf_1.vendor_id = f_1.vendor_id)
52. 79,970.496 152,715.964 ↓ 1.0 6,599 14,873

Hash Join (cost=199.30..5,239.55 rows=6,591 width=26) (actual time=0.004..10.268 rows=6,599 loops=14,873)

  • Hash Cond: (lf_1.vendor_site_id = slfmi_1.vendor_site_id)
53. 72,743.843 72,743.843 ↓ 1.0 30,848 14,873

Seq Scan on sagir_lieux_fournisseurs_mo lf_1 (cost=0.00..4,820.23 rows=30,823 width=29) (actual time=0.002..4.891 rows=30,848 loops=14,873)

54. 0.878 1.625 ↓ 1.0 6,599 1

Hash (cost=116.91..116.91 rows=6,591 width=13) (actual time=1.625..1.625 rows=6,599 loops=1)

  • Buckets: 8192 Batches: 1 Memory Usage: 336kB
55. 0.747 0.747 ↓ 1.0 6,599 1

Seq Scan on sagir_lieux_fournisseurs_mo_informations_supplementaires slfmi_1 (cost=0.00..116.91 rows=6,591 width=13) (actual time=0.007..0.747 rows=6,599 loops=1)

56. 6.044 132.969 ↓ 1.0 23,455 1

Hash (cost=2,248.45..2,248.45 rows=23,445 width=45) (actual time=132.969..132.969 rows=23,455 loops=1)

  • Buckets: 32768 Batches: 1 Memory Usage: 2129kB
57. 126.925 126.925 ↓ 1.0 23,455 1

Seq Scan on sagir_fournisseurs_mo f_1 (cost=0.00..2,248.45 rows=23,445 width=45) (actual time=8.152..126.925 rows=23,455 loops=1)

58. 104.111 104.111 ↑ 1.0 1 14,873

Index Scan using lot_transaction_pk on lot_transaction lt (cost=0.28..0.30 rows=1 width=15) (actual time=0.007..0.007 rows=1 loops=14,873)

  • Index Cond: (id = t.id_lot_transaction)
  • Filter: (code_statut_lot <> 'ERRRECPT'::text)
  • Rows Removed by Filter: 0
59. 58.856 205.996 ↑ 1.0 1 14,714

Nested Loop (cost=0.43..8.71 rows=1 width=23) (actual time=0.012..0.014 rows=1 loops=14,714)

60. 73.570 73.570 ↑ 1.0 1 14,714

Index Scan using role_nom_application_key on role r (cost=0.14..0.40 rows=1 width=23) (actual time=0.005..0.005 rows=1 loops=14,714)

  • Index Cond: ((nom)::text = spr.role)
61. 73.570 73.570 ↑ 1.0 1 14,714

Index Only Scan using utilisateur_role_pkey on utilisateur_role ur (cost=0.28..8.30 rows=1 width=8) (actual time=0.005..0.005 rows=1 loops=14,714)

  • Index Cond: ((utilisateur = u.id) AND (role = r.id))
  • Heap Fetches: 14714
62. 44.142 44.142 ↑ 1.0 1 14,714

Index Only Scan using application_pkey on application a (cost=0.14..0.21 rows=1 width=4) (actual time=0.003..0.003 rows=1 loops=14,714)

  • Index Cond: (id = r.application)
  • Heap Fetches: 14714
63. 44.142 44.142 ↑ 1.0 1 14,714

Index Scan using enum_statut_lot_pk on enum_statut_lot etl (cost=0.13..0.17 rows=1 width=64) (actual time=0.003..0.003 rows=1 loops=14,714)

  • Index Cond: ((code)::text = lt.code_statut_lot)
64. 29.428 29.428 ↑ 1.0 1 14,714

Index Scan using fichier_transfert_pk on fichier_transfert ft (cost=0.14..0.16 rows=1 width=12) (actual time=0.002..0.002 rows=1 loops=14,714)

  • Index Cond: (id = t.id_fichier_transfert)
Planning time : 13.315 ms
Execution time : 185,810.607 ms