explain.depesz.com

PostgreSQL's explain analyze made readable

Result: BpRT

Settings
# exclusive inclusive rows x rows loops node
1. 0.012 1,961.095 ↓ 20.0 20 1

Limit (cost=3,765.61..3,765.65 rows=1 width=586) (actual time=1,961.075..1,961.095 rows=20 loops=1)

  • Buffers: shared hit=2,254,832
2. 0.021 1,961.083 ↓ 21.0 21 1

GroupAggregate (cost=3,765.57..3,765.61 rows=1 width=586) (actual time=1,961.072..1,961.083 rows=21 loops=1)

  • Group Key: dl.highrisk, dl.createdat, l.linkid, d.url, (COALESCE(cfg.icon, mcfg.icon)), (COALESCE(cfg.channelid, mcfg.channelid)), a.assetid, i.incidentstatusid, l.reopenfromlinkid
  • Buffers: shared hit=2,254,832
3. 1.784 1,961.062 ↓ 23.0 23 1

Sort (cost=3,765.57..3,765.57 rows=1 width=586) (actual time=1,961.061..1,961.062 rows=23 loops=1)

  • Sort Key: dl.highrisk DESC, dl.createdat, l.linkid, d.url, (COALESCE(cfg.icon, mcfg.icon)), (COALESCE(cfg.channelid, mcfg.channelid)), a.assetid, l.reopenfromlinkid
  • Sort Method: quicksort Memory: 213kB
  • Buffers: shared hit=2,254,832
4. 0.573 1,959.278 ↓ 1,168.0 1,168 1

Nested Loop (cost=4.03..3,765.56 rows=1 width=586) (actual time=0.58..1,959.278 rows=1,168 loops=1)

  • Filter: (((c.customerdivisionid IS NOT NULL) AND (dc.domainid IS NOT NULL) AND (cc.scopeid IS NOT NULL) AND (ccd.contractid IS NOT NULL)) OR (c.customerdivisionid IS NULL))
  • Buffers: shared hit=2,254,832
5. 1.163 1,957.537 ↓ 1,168.0 1,168 1

Nested Loop (cost=3.88..3,765.07 rows=1 width=198) (actual time=0.565..1,957.537 rows=1,168 loops=1)

  • Buffers: shared hit=2,253,664
6. 0.458 1,956.374 ↓ 1,168.0 1,168 1

Nested Loop (cost=3.73..3,764.02 rows=1 width=198) (actual time=0.557..1,956.374 rows=1,168 loops=1)

  • Buffers: shared hit=2,253,664
7. 0.545 1,955.916 ↓ 1,168.0 1,168 1

Nested Loop (cost=3.73..3,752.27 rows=1 width=198) (actual time=0.555..1,955.916 rows=1,168 loops=1)

  • Buffers: shared hit=2,253,664
8. 1.508 1,955.371 ↓ 1,168.0 1,168 1

Nested Loop (cost=3.73..3,741.14 rows=1 width=198) (actual time=0.552..1,955.371 rows=1,168 loops=1)

  • Buffers: shared hit=2,253,664
9. 1.666 1,953.863 ↓ 1,168.0 1,168 1

Nested Loop (cost=3.44..3,734.99 rows=1 width=144) (actual time=0.544..1,953.863 rows=1,168 loops=1)

  • Buffers: shared hit=2,252,800
10. 1.050 1,952.197 ↓ 1,168.0 1,168 1

Nested Loop (cost=3.15..3,734.58 rows=1 width=148) (actual time=0.537..1,952.197 rows=1,168 loops=1)

  • Buffers: shared hit=2,251,936
11. 1.654 1,949.979 ↓ 1,168.0 1,168 1

Nested Loop (cost=2.86..3,734.21 rows=1 width=90) (actual time=0.524..1,949.979 rows=1,168 loops=1)

  • Buffers: shared hit=2,249,296
12. 0.242 1,947.157 ↓ 1,168.0 1,168 1

Nested Loop (cost=2.57..3,733.9 rows=1 width=62) (actual time=0.511..1,947.157 rows=1,168 loops=1)

  • Buffers: shared hit=2,245,792
13. 0.064 0.064 ↑ 1.0 1 1

Seq Scan on scope scope (cost=0..23.08 rows=1 width=4) (actual time=0.006..0.064 rows=1 loops=1)

  • Filter: (scope.scopeid = 1)
  • Buffers: shared hit=12
14. 0.105 1,946.851 ↓ 1,168.0 1,168 1

Nested Loop (cost=2.57..3,710.81 rows=1 width=62) (actual time=0.503..1,946.851 rows=1,168 loops=1)

  • Filter: ((cl.linkid IS NULL) OR cl.hasminimumdata)
  • Buffers: shared hit=2,245,780
15. 112.118 1,944.406 ↓ 1,170.0 1,170 1

Nested Loop (cost=2.15..3,703.56 rows=1 width=70) (actual time=0.493..1,944.406 rows=1,170 loops=1)

  • Buffers: shared hit=2,244,266
16. 134.696 1,195.698 ↓ 318,295.0 318,295 1

Nested Loop (cost=1.71..3,703.07 rows=1 width=70) (actual time=0.17..1,195.698 rows=318,295 loops=1)

  • Buffers: shared hit=1,287,036
17. 50.569 424.410 ↓ 318,296.0 318,296 1

Nested Loop (cost=1.28..3,700.51 rows=1 width=57) (actual time=0.157..424.41 rows=318,296 loops=1)

  • Buffers: shared hit=12,121
18. 0.004 0.289 ↓ 8.0 8 1

Nested Loop (cost=0.85..53.25 rows=1 width=41) (actual time=0.12..0.289 rows=8 loops=1)

  • Buffers: shared hit=65
19. 0.114 0.114 ↑ 1.0 1 1

Seq Scan on contract co (cost=0..23.48 rows=1 width=8) (actual time=0.077..0.114 rows=1 loops=1)

  • Filter: (co.active AND (co.contractid = 614))
  • Buffers: shared hit=13
20. 0.034 0.171 ↓ 8.0 8 1

Nested Loop (cost=0.85..29.76 rows=1 width=37) (actual time=0.042..0.171 rows=8 loops=1)

  • Buffers: shared hit=52
21. 0.033 0.105 ↓ 4.0 8 1

Nested Loop (cost=0.57..29.03 rows=2 width=29) (actual time=0.031..0.105 rows=8 loops=1)

  • Buffers: shared hit=28
22. 0.032 0.032 ↓ 4.0 8 1

Index Scan using idx_asset_customer on asset a (cost=0.28..12.41 rows=2 width=21) (actual time=0.017..0.032 rows=8 loops=1)

  • Index Cond: (a.customerid = 594)
  • Filter: a.active
  • Buffers: shared hit=4
23. 0.040 0.040 ↑ 1.0 1 8

Index Only Scan using uq_asset_scope on asset_scope ascope (cost=0.29..8.31 rows=1 width=8) (actual time=0.005..0.005 rows=1 loops=8)

  • Index Cond: ((ascope.assetid = a.assetid) AND (ascope.scopeid = 1))
  • Heap Fetches: 8
  • Buffers: shared hit=24
24. 0.032 0.032 ↑ 1.0 1 8

Index Scan using idx_contract_asset__asset on contract_asset coa (cost=0.28..0.36 rows=1 width=8) (actual time=0.004..0.004 rows=1 loops=8)

  • Index Cond: (coa.assetid = ascope.assetid)
  • Filter: (coa.contractid = 614)
  • Buffers: shared hit=24
25. 28.104 373.552 ↑ 1.1 39,787 8

Append (cost=0.43..3,108.9 rows=43,069 width=16) (actual time=0.021..46.694 rows=39,787 loops=8)

  • Buffers: shared hit=12,056
26. 345.448 345.448 ↑ 1.1 39,787 8

Index Scan using link_partitioned_594_customerid_assetid_linkid_linktypeid_idx on link_partitioned_594 l (cost=0.43..2,893.56 rows=43,069 width=16) (actual time=0.02..43.181 rows=39,787 loops=8)

  • Index Cond: ((l.customerid = 594) AND (l.assetid = ascope.assetid) AND (l.linktypeid = 1))
  • Filter: (l.hasminimumdata AND (l.enforcementstatusid = 6))
  • Buffers: shared hit=12,056
27. 636.592 636.592 ↑ 1.0 1 318,296

Index Scan using idx_detection_link on detectionlink dl (cost=0.43..2.56 rows=1 width=13) (actual time=0.002..0.002 rows=1 loops=318,296)

  • Index Cond: ((dl.detectionlinkid = l.linkid) AND (dl.linktypeid = 1))
  • Buffers: shared hit=1,274,915
28. 0.000 636.590 ↓ 0.0 0 318,295

Append (cost=0.43..0.48 rows=1 width=20) (actual time=0.002..0.002 rows=0 loops=318,295)

  • Buffers: shared hit=957,230
29. 636.590 636.590 ↓ 0.0 0 318,295

Index Scan using incident_partitioned_594_customerid_detectionlinkid_inciden_idx on incident_partitioned_594 i (cost=0.43..0.47 rows=1 width=20) (actual time=0.002..0.002 rows=0 loops=318,295)

  • Index Cond: ((i.customerid = 594) AND (i.detectionlinkid = dl.detectionlinkid) AND (i.incidentstatusid = 2) AND (i.enforcementlevelid = 8))
  • Buffers: shared hit=957,230
30. 1.170 2.340 ↓ 0.0 0 1,170

Append (cost=0.43..7.24 rows=1 width=9) (actual time=0.002..0.002 rows=0 loops=1,170)

  • Buffers: shared hit=1,514
31. 1.170 1.170 ↓ 0.0 0 1,170

Index Scan using link_partitioned_594_customerid_assetid_linkid_linktypeid_idx on link_partitioned_594 cl (cost=0.43..7.23 rows=1 width=9) (actual time=0.001..0.001 rows=0 loops=1,170)

  • Index Cond: ((cl.customerid = 594) AND (cl.assetid = l.assetid) AND (cl.linkid = i.contentlinkid) AND (cl.linktypeid = 2))
  • Buffers: shared hit=1,514
32. 1.168 1.168 ↑ 1.0 1 1,168

Index Scan using uq_domain_domainid_domaintypeid on domain d (cost=0.29..0.32 rows=1 width=32) (actual time=0.001..0.001 rows=1 loops=1,168)

  • Index Cond: (d.domainid = l.domainid)
  • Filter: d.active
  • Buffers: shared hit=3,504
33. 1.168 1.168 ↑ 1.0 1 1,168

Index Scan using pk_domainconfiguration on domainconfiguration cfg (cost=0.29..0.37 rows=1 width=62) (actual time=0.001..0.001 rows=1 loops=1,168)

  • Index Cond: (cfg.domainconfigurationid = d.domainconfigurationid)
  • Buffers: shared hit=2,640
34. 0.000 0.000 ↓ 0.0 0 1,168

Index Scan using uq_domain_domainid_domaintypeid on domain md (cost=0.29..0.4 rows=1 width=8) (actual time=0..0 rows=0 loops=1,168)

  • Index Cond: (md.domainid = d.masterdomainid)
  • Filter: (md.hierarchylevelid = 1)
  • Buffers: shared hit=864
35. 0.000 0.000 ↓ 0.0 0 1,168

Index Scan using pk_domainconfiguration on domainconfiguration mcfg (cost=0.29..6.15 rows=1 width=62) (actual time=0..0 rows=0 loops=1,168)

  • Index Cond: (mcfg.domainconfigurationid = md.domainconfigurationid)
  • Buffers: shared hit=864
36. 0.000 0.000 ↓ 0.0 0 1,168

Seq Scan on customerdivision c (cost=0..10.5 rows=50 width=8) (actual time=0..0 rows=0 loops=1,168)

37. 0.000 0.000 ↓ 0.0 0 1,168

Seq Scan on domain_customerdivision dc (cost=0..10.7 rows=70 width=8) (actual time=0..0 rows=0 loops=1,168)

38. 0.000 0.000 ↓ 0.0 0 1,168

Index Scan using idx_contractcustomerdivision_customerdivision on contract_customerdivision ccd (cost=0.14..1.04 rows=1 width=8) (actual time=0..0 rows=0 loops=1,168)

  • Index Cond: (ccd.customerdivisionid = c.customerdivisionid)
  • Filter: (ccd.contractid = 614)
39. 1.168 1.168 ↓ 0.0 0 1,168

Index Scan using idx_customerdivisionscope_scope on customerdivision_scope cc (cost=0.15..0.36 rows=10 width=8) (actual time=0.001..0.001 rows=0 loops=1,168)

  • Index Cond: ((cc.scopeid = ascope.scopeid) AND (cc.scopeid = 1))
  • Buffers: shared hit=1,168
Planning time : 20.888 ms
Execution time : 1,961.331 ms