explain.depesz.com

PostgreSQL's explain analyze made readable

Result: TYbC

Settings
# exclusive inclusive rows x rows loops node
1. 3.961 629,843.516 ↑ 1.0 1 1

Aggregate (cost=56,761.67..56,761.68 rows=1 width=8) (actual time=629,843.515..629,843.516 rows=1 loops=1)

  • Buffers: shared hit=1,245,245 read=541,098 dirtied=74,356
  • I/O Timings: read=616,669.363
2. 1,060.031 629,839.555 ↓ 73.5 1,396 1

Nested Loop (cost=1.00..56,761.62 rows=19 width=4) (actual time=591.007..629,839.555 rows=1,396 loops=1)

  • Buffers: shared hit=1,245,236 read=541,098 dirtied=74,356
  • I/O Timings: read=616,669.363
3. 624,693.559 624,693.559 ↓ 21.9 314,305 1

Index Scan using index_ci_builds_on_commit_id_and_stage_idx_and_created_at on public.ci_builds (cost=0.57..35,045.22 rows=14,322 width=8) (actual time=13.669..624,693.559 rows=314,305 loops=1)

  • Index Cond: ((ci_builds.commit_id >= 174,285,001) AND (ci_builds.commit_id <= 174,475,001) AND (ci_builds.created_at >= '2020-07-08 09:09:46.468435'::timestamp without time zone) AND (ci_builds.created_at <= '2020-08-05 09:09:46.468699'::timestamp without time zone))
  • Filter: (((NOT ci_builds.retried) OR (ci_builds.retried IS NULL)) AND ((ci_builds.type)::text = 'Ci::Build'::text) AND ((ci_builds.status)::text = 'success'::text))
  • Rows Removed by Filter: 211,583
  • Buffers: shared hit=301,065 read=540,134 dirtied=73,658
  • I/O Timings: read=615,425.281
4. 4,085.965 4,085.965 ↓ 0.0 0 314,305

Index Only Scan using idx_security_scans_on_build_and_scan_type on public.security_scans (cost=0.43..1.52 rows=1 width=8) (actual time=0.013..0.013 rows=0 loops=314,305)

  • Index Cond: ((security_scans.build_id = ci_builds.id) AND (security_scans.scan_type = 2))
  • Heap Fetches: 1,396
  • Buffers: shared hit=944,171 read=964 dirtied=698
  • I/O Timings: read=1,244.082