explain.depesz.com

PostgreSQL's explain analyze made readable

Result: u6r7

Settings
# exclusive inclusive rows x rows loops node
1. 0.017 0.193 ↓ 0.0 0 1

Nested Loop Left Join (cost=30.26..77.49 rows=32 width=1,645) (actual time=0.193..0.193 rows=0 loops=1)

2. 0.017 0.176 ↓ 0.0 0 1

Hash Left Join (cost=29.98..58.77 rows=8 width=1,275) (actual time=0.176..0.176 rows=0 loops=1)

  • Hash Cond: (me.current_incident = current_incident.id)
3. 0.017 0.159 ↓ 0.0 0 1

Limit (cost=22.19..50.80 rows=8 width=1,180) (actual time=0.159..0.159 rows=0 loops=1)

4. 0.049 0.142 ↓ 0.0 0 1

Bitmap Heap Scan on tunnel me (cost=22.19..50.80 rows=8 width=1,180) (actual time=0.142..0.142 rows=0 loops=1)

  • Recheck Cond: ((current_incident IS NOT NULL) AND (up_since <= '2019-05-15 10:50:26+02'::timestamp with time zone))
  • Filter: (current_state = 'up'::text)
  • Rows Removed by Filter: 27
  • Heap Blocks: exact=25
5. 0.028 0.093 ↓ 0.0 0 1

BitmapAnd (cost=22.19..22.19 rows=8 width=0) (actual time=0.093..0.093 rows=0 loops=1)

6. 0.015 0.015 ↑ 1.0 28 1

Bitmap Index Scan on idx_current_incident (cost=0.00..4.49 rows=28 width=0) (actual time=0.015..0.015 rows=28 loops=1)

  • Index Cond: (current_incident IS NOT NULL)
7. 0.050 0.050 ↑ 1.0 687 1

Bitmap Index Scan on idx_core_tunnel_up_since (cost=0.00..17.45 rows=689 width=0) (actual time=0.050..0.050 rows=687 loops=1)

  • Index Cond: (up_since <= '2019-05-15 10:50:26+02'::timestamp with time zone)
8. 0.000 0.000 ↓ 0.0 0

Hash (cost=5.13..5.13 rows=213 width=95) (never executed)

9. 0.000 0.000 ↓ 0.0 0

Seq Scan on tunnel_incident current_incident (cost=0.00..5.13 rows=213 width=95) (never executed)

10. 0.000 0.000 ↓ 0.0 0

Index Scan using idx_tunnel_incident on tunnel_downtime core__tunnel_downtime__tunnel_incident (cost=0.28..2.30 rows=4 width=370) (never executed)

  • Index Cond: (tunnel_incident = current_incident.id)