explain.depesz.com

PostgreSQL's explain analyze made readable

Result: G05Y

Settings
# exclusive inclusive rows x rows loops node
1. 0.002 59,372.119 ↓ 0.0 0 1

Limit (cost=1.25..87,273.94 rows=1 width=234) (actual time=59,372.119..59,372.119 rows=0 loops=1)

  • Output: ci_pipelines.id, ci_pipelines.ref, ci_pipelines.sha, ci_pipelines.before_sha, ci_pipelines.created_at, ci_pipelines.updated_at, ci_pipelines.tag, ci_pipelines.yaml_errors, ci_pipelines.committed_a
2. 20.134 59,372.117 ↓ 0.0 0 1

Nested Loop (cost=1.25..3,578,181.31 rows=41 width=234) (actual time=59,372.117..59,372.117 rows=0 loops=1)

  • Output: ci_pipelines.id, ci_pipelines.ref, ci_pipelines.sha, ci_pipelines.before_sha, ci_pipelines.created_at, ci_pipelines.updated_at, ci_pipelines.tag, ci_pipelines.yaml_errors, ci_pipelines.commi
3. 59,229.680 59,229.680 ↑ 1.9 2,983 1

Index Scan Backward using ci_pipelines_pkey on public.ci_pipelines (cost=0.56..3,485,786.06 rows=5,740 width=234) (actual time=9.295..59,229.680 rows=2,983 loops=1)

  • Output: ci_pipelines.id, ci_pipelines.ref, ci_pipelines.sha, ci_pipelines.before_sha, ci_pipelines.created_at, ci_pipelines.updated_at, ci_pipelines.tag, ci_pipelines.yaml_errors, ci_pipelines
  • Filter: ((ci_pipelines.project_id = 20699) AND ((ci_pipelines.ref)::text = 'master'::text))
  • Rows Removed by Filter: 26821625
4. 122.303 122.303 ↓ 0.0 0 2,983

Index Scan using index_ci_builds_on_commit_id_and_type_and_name_and_ref on public.ci_builds (cost=0.69..16.09 rows=1 width=4) (actual time=0.041..0.041 rows=0 loops=2,983)

  • Output: ci_builds.commit_id
  • Index Cond: ((ci_builds.commit_id = ci_pipelines.id) AND ((ci_builds.type)::text = 'Ci::Build'::text) AND ((ci_builds.name)::text = ANY ('{sast,dependency_scanning,sast:container,container_sca
  • Filter: (((NOT ci_builds.retried) OR (ci_builds.retried IS NULL)) AND ((ci_builds.artifacts_expire_at IS NULL) OR (ci_builds.artifacts_expire_at > '2018-08-27 16:32:37.511623'::timestamp witho
5.          

SubPlan (forIndex Scan)

6. 0.000 0.000 ↓ 0.0 0

Index Only Scan using index_ci_job_artifacts_on_job_id_and_file_type on public.ci_job_artifacts (cost=0.57..3.59 rows=1 width=0) (never executed)

  • Index Cond: ((ci_job_artifacts.job_id = ci_builds.id) AND (ci_job_artifacts.file_type = 1))
  • Heap Fetches: 0