explain.depesz.com

PostgreSQL's explain analyze made readable

Result: NKpT : Optimization for: Optimization for: Optimization for: plan #TcbA; plan #qOFP; plan #dAeA

Settings

Optimization path:

# exclusive inclusive rows x rows loops node
1. 19.909 666.832 ↑ 1.0 50,000 1

Limit (cost=1,001.77..176,785.26 rows=50,000 width=277) (actual time=1.759..666.832 rows=50,000 loops=1)

  • Buffers: shared hit=269471
2. 231.405 646.923 ↑ 4.4 50,000 1

Nested Loop (cost=1,001.77..768,018.95 rows=218,171 width=277) (actual time=1.757..646.923 rows=50,000 loops=1)

  • Buffers: shared hit=205622
3. 0.000 65.518 ↑ 4.4 50,000 1

Gather (cost=1,001.35..660,224.63 rows=218,171 width=182) (actual time=1.716..65.518 rows=50,000 loops=1)

  • Buffers: shared hit=69471
4. 12.013 96.979 ↑ 5.4 16,845 3

Hash Join (cost=1.35..637,407.53 rows=90,905 width=182) (actual time=0.400..96.979 rows=16,845 loops=3)

  • Buffers: shared hit=69471
5. 58.871 84.923 ↑ 5.4 16,845 3

Nested Loop (cost=0.14..637,055.33 rows=90,905 width=169) (actual time=0.221..84.923 rows=16,845 loops=3)

  • Filter: ((cr.provider_id = ANY (g.providers)) OR (g.providers IS NULL))
  • Buffers: shared hit=69402
6. 3.463 26.050 ↑ 87.9 19,278 3

Append (cost=0.00..323,546.36 rows=1,694,544 width=169) (actual time=0.030..26.050 rows=19,278 loops=3)

  • Buffers: shared hit=1690
7. 22.584 22.584 ↑ 87.9 19,278 3

Seq Scan on contact_reports_p2019_04_10 cr (cost=0.00..315,002.61 rows=1,694,334 width=169) (actual time=0.027..22.584 rows=19,278 loops=3)

  • Filter: (report_date_time > '2019-04-10 08:00:00'::timestamp without time zone)
  • Buffers: shared hit=1690
8. 0.000 0.000 ↓ 0.0 0 1

Seq Scan on contact_reports_p2019_04_11 cr_1 (cost=0.00..11.84 rows=49 width=220) (actual time=0.000..0.000 rows=0 loops=1)

  • Filter: (report_date_time > '2019-04-10 08:00:00'::timestamp without time zone)
9. 0.000 0.000 ↓ 0.0 0 1

Seq Scan on contact_reports_p2019_04_12 cr_2 (cost=0.00..11.84 rows=49 width=220) (actual time=0.000..0.000 rows=0 loops=1)

  • Filter: (report_date_time > '2019-04-10 08:00:00'::timestamp without time zone)
10. 0.000 0.000 ↓ 0.0 0 1

Seq Scan on contact_reports_p2019_04_13 cr_3 (cost=0.00..11.84 rows=49 width=220) (actual time=0.000..0.000 rows=0 loops=1)

  • Filter: (report_date_time > '2019-04-10 08:00:00'::timestamp without time zone)
11. 0.000 0.000 ↓ 0.0 0 1

Seq Scan on contact_reports_p2019_04_14 cr_4 (cost=0.00..11.84 rows=49 width=220) (actual time=0.000..0.000 rows=0 loops=1)

  • Filter: (report_date_time > '2019-04-10 08:00:00'::timestamp without time zone)
12. 0.001 0.001 ↓ 0.0 0 1

Seq Scan on contact_reports_p2019_04_15 cr_5 (cost=0.00..11.84 rows=49 width=220) (actual time=0.000..0.001 rows=0 loops=1)

  • Filter: (report_date_time > '2019-04-10 08:00:00'::timestamp without time zone)
13. 0.002 0.002 ↓ 0.0 0 1

Seq Scan on contact_reports_default cr_6 (cost=0.00..11.84 rows=49 width=220) (actual time=0.002..0.002 rows=0 loops=1)

  • Filter: (report_date_time > '2019-04-10 08:00:00'::timestamp without time zone)
14. 0.002 0.002 ↓ 0.0 0 57,833

Index Scan using geoserver_acl_geometry_idx on geoserver_acl g (cost=0.14..0.16 rows=1 width=64) (actual time=0.002..0.002 rows=0 loops=57,833)

  • Index Cond: (cr.geopoint && geometry)
  • Filter: (username = 'cmaoi'::text)
  • Buffers: shared hit=67712
15. 0.015 0.043 ↓ 1.4 13 3

Hash (cost=1.09..1.09 rows=9 width=17) (actual time=0.043..0.043 rows=13 loops=3)

  • Buffers: shared hit=3
16. 0.028 0.028 ↓ 1.4 13 3

Seq Scan on providers p (cost=0.00..1.09 rows=9 width=17) (actual time=0.024..0.028 rows=13 loops=3)

  • Buffers: shared hit=3
17. 350.000 350.000 ↑ 1.0 1 50,000

Index Scan using pk_identities on identities i (cost=0.42..0.47 rows=1 width=246) (actual time=0.007..0.007 rows=1 loops=50,000)

  • Index Cond: (identity_id = cr.identity_id)
  • Buffers: shared hit=200000