explain.depesz.com

PostgreSQL's explain analyze made readable

Result: gXK2

Settings
# exclusive inclusive rows x rows loops node
1. 0.000 0.000 ↓ 0.0

Aggregate (cost=5,349,862.33..5,349,862.34 rows=1 width=8) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Append (cost=0.00..5,346,595.74 rows=1,306,633 width=0) (actual rows= loops=)

3. 0.000 0.000 ↓ 0.0

Seq Scan on jobs (cost=0.00..0.00 rows=1 width=0) (actual rows= loops=)

  • Filter: (searchable AND ((NOT expired) OR (expired IS NULL)) AND (location_id IS NOT NULL) AND (checked_at > '2020-02-08 00:00:00'::timestamp without time zone) AND (listed_date > '2020-01-01 00:00:00'::timestamp without time zone) AND ((country)::text = 'US'::text) AND (created_at < now()))
4. 0.000 0.000 ↓ 0.0

Bitmap Heap Scan on jobs_p2020_01 (cost=2,304,793.66..3,808,720.14 rows=681,662 width=0) (actual rows= loops=)

  • Recheck Cond: (((country)::text = 'US'::text) AND ((NOT expired) OR (expired IS NULL)) AND (checked_at > '2020-02-08 00:00:00'::timestamp without time zone))
  • Filter: (searchable AND ((NOT expired) OR (expired IS NULL)) AND (location_id IS NOT NULL) AND (listed_date > '2020-01-01 00:00:00'::timestamp without time zone) AND (created_at < now()))
5. 0.000 0.000 ↓ 0.0

BitmapAnd (cost=2,304,793.66..2,304,793.66 rows=509,868 width=0) (actual rows= loops=)

6. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on jobs_p2020_01_country_idx (cost=0.00..463,298.53 rows=4,049,862 width=0) (actual rows= loops=)

  • Index Cond: ((country)::text = 'US'::text)
7. 0.000 0.000 ↓ 0.0

BitmapOr (cost=521,104.13..521,104.13 rows=5,517,091 width=0) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on jobs_p2020_01_expired_idx (cost=0.00..73,696.04 rows=780,731 width=0) (actual rows= loops=)

  • Index Cond: (expired = false)
9. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on jobs_p2020_01_expired_idx (cost=0.00..447,067.26 rows=4,736,360 width=0) (actual rows= loops=)

  • Index Cond: (expired IS NULL)
10. 0.000 0.000 ↓ 0.0

Bitmap Index Scan on jobs_p2020_01_checked_at_idx (cost=0.00..1,320,049.67 rows=5,198,548 width=0) (actual rows= loops=)

  • Index Cond: (checked_at > '2020-02-08 00:00:00'::timestamp without time zone)
11. 0.000 0.000 ↓ 0.0

Seq Scan on jobs_p2020_02 (cost=0.00..1,537,867.45 rows=624,969 width=0) (actual rows= loops=)

  • Filter: (searchable AND ((NOT expired) OR (expired IS NULL)) AND (location_id IS NOT NULL) AND (checked_at > '2020-02-08 00:00:00'::timestamp without time zone) AND (listed_date > '2020-01-01 00:00:00'::timestamp without time zone) AND ((country)::text = 'US'::text) AND (created_at < now()))
12. 0.000 0.000 ↓ 0.0

Index Scan using jobs_p2020_03_country_idx on jobs_p2020_03 (cost=0.12..8.15 rows=1 width=0) (actual rows= loops=)

  • Index Cond: ((country)::text = 'US'::text)
  • Filter: (searchable AND ((NOT expired) OR (expired IS NULL)) AND (location_id IS NOT NULL) AND (checked_at > '2020-02-08 00:00:00'::timestamp without time zone) AND (listed_date > '2020-01-01 00:00:00'::timestamp without time zone) AND (created_at < now()))