explain.depesz.com

PostgreSQL's explain analyze made readable

Result: qMIj : c-v2.sql

Settings
# exclusive inclusive rows x rows loops node
1. 0.006 0.367 ↑ 1.0 1 1

Aggregate (cost=39.89..39.90 rows=1 width=8) (actual time=0.367..0.367 rows=1 loops=1)

2. 0.004 0.361 ↑ 1.3 27 1

Limit (cost=17.55..39.44 rows=36 width=4) (actual time=0.279..0.361 rows=27 loops=1)

3. 0.009 0.357 ↑ 1.3 27 1

Nested Loop (cost=17.55..39.44 rows=36 width=4) (actual time=0.278..0.357 rows=27 loops=1)

4. 0.010 0.294 ↑ 1.3 27 1

Nested Loop (cost=17.27..26.06 rows=36 width=8) (actual time=0.273..0.294 rows=27 loops=1)

5. 0.003 0.275 ↑ 2.0 3 1

Nested Loop (cost=17.00..19.95 rows=6 width=8) (actual time=0.270..0.275 rows=3 loops=1)

6. 0.003 0.266 ↑ 2.0 3 1

HashAggregate (cost=16.85..16.91 rows=6 width=4) (actual time=0.266..0.266 rows=3 loops=1)

  • Group Key: max(ci_pipelines_1.id)
7. 0.007 0.263 ↑ 2.0 3 1

GroupAggregate (cost=16.67..16.78 rows=6 width=8) (actual time=0.257..0.263 rows=3 loops=1)

  • Group Key: ci_pipelines_1.project_id
8. 0.013 0.256 ↓ 3.3 20 1

Sort (cost=16.67..16.69 rows=6 width=8) (actual time=0.253..0.256 rows=20 loops=1)

  • Sort Key: ci_pipelines_1.project_id
  • Sort Method: quicksort Memory: 25kB
9. 0.041 0.243 ↓ 3.3 20 1

Nested Loop Semi Join (cost=7.60..16.59 rows=6 width=8) (actual time=0.107..0.243 rows=20 loops=1)

10. 0.020 0.148 ↓ 2.2 54 1

Nested Loop (cost=7.33..8.91 rows=25 width=8) (actual time=0.086..0.148 rows=54 loops=1)

  • Join Filter: (ci_pipelines_1.project_id = rs.source_id)
11. 0.014 0.080 ↓ 3.0 12 1

HashAggregate (cost=7.18..7.22 rows=4 width=8) (actual time=0.075..0.080 rows=12 loops=1)

  • Group Key: projects.id
12. 0.013 0.066 ↓ 3.0 12 1

Hash Join (cost=3.41..7.17 rows=4 width=8) (actual time=0.049..0.066 rows=12 loops=1)

  • Hash Cond: (projects.id = rs.source_id)
13. 0.019 0.019 ↑ 1.0 48 1

Seq Scan on projects (cost=0.00..3.48 rows=48 width=4) (actual time=0.010..0.019 rows=48 loops=1)

14. 0.005 0.034 ↓ 2.4 12 1

Hash (cost=3.35..3.35 rows=5 width=4) (actual time=0.033..0.034 rows=12 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
15. 0.029 0.029 ↓ 2.4 12 1

Seq Scan on routes rs (cost=0.00..3.35 rows=5 width=4) (actual time=0.022..0.029 rows=12 loops=1)

  • Filter: (((path)::text ~~ 'nu-group/%'::text) AND ((source_type)::text = 'Project'::text))
  • Rows Removed by Filter: 83
16. 0.048 0.048 ↑ 1.0 4 12

Index Scan using index_ci_pipelines_on_project_id_and_status_and_config_source on ci_pipelines ci_pipelines_1 (cost=0.14..0.37 rows=4 width=8) (actual time=0.002..0.004 rows=4 loops=12)

  • Index Cond: ((project_id = projects.id) AND ((status)::text = 'success'::text))
17. 0.054 0.054 ↓ 0.0 0 54

Index Only Scan using index_vulnerability_occurrence_pipelines_on_pipeline_id on vulnerability_occurrence_pipelines vulnerability_occurrence_pipelines_1 (cost=0.28..0.82 rows=24 width=4) (actual time=0.001..0.001 rows=0 loops=54)

  • Index Cond: (pipeline_id = ci_pipelines_1.id)
  • Heap Fetches: 20
18. 0.006 0.006 ↑ 1.0 1 3

Index Only Scan using ci_pipelines_pkey on ci_pipelines (cost=0.14..0.50 rows=1 width=4) (actual time=0.001..0.002 rows=1 loops=3)

  • Index Cond: (id = (max(ci_pipelines_1.id)))
  • Heap Fetches: 2
19. 0.009 0.009 ↑ 2.7 9 3

Index Scan using index_vulnerability_occurrence_pipelines_on_pipeline_id on vulnerability_occurrence_pipelines (cost=0.28..0.78 rows=24 width=12) (actual time=0.002..0.003 rows=9 loops=3)

  • Index Cond: (pipeline_id = ci_pipelines.id)
20. 0.054 0.054 ↑ 1.0 1 27

Index Only Scan using vulnerability_occurrences_pkey on vulnerability_occurrences (cost=0.28..0.36 rows=1 width=8) (actual time=0.002..0.002 rows=1 loops=27)

  • Index Cond: (id = vulnerability_occurrence_pipelines.occurrence_id)
  • Heap Fetches: 27
Planning time : 2.024 ms
Execution time : 0.452 ms