explain.depesz.com

PostgreSQL's explain analyze made readable

Result: wDkP

Settings
# exclusive inclusive rows x rows loops node
1. 335.585 526.099 ↓ 6.8 736,480 1

Nested Loop (cost=1,104.39..36,531.20 rows=108,540 width=228) (actual time=1.595..526.099 rows=736,480 loops=1)

  • Output: catalog_image_docker.repo, catalog_image_docker.tag, image_package_vulnerabilities.pkg_name, image_package_vulnerabilities.pkg_version, feed_data_vulnerabilities.id, feed_data_vulnerabilities.link, feed_data_vulnerabilities.severity, feed_data_vulnerabilities_f
2. 0.000 34.012 ↓ 7.6 9,206 1

Gather (cost=1,096.25..35,090.48 rows=1,206 width=83) (actual time=1.545..34.012 rows=9,206 loops=1)

  • Output: catalog_image_docker.repo, catalog_image_docker.tag, image_package_vulnerabilities.pkg_name, image_package_vulnerabilities.pkg_version, image_package_vulnerabilities.vulnerability_id
  • Workers Planned: 1
  • Workers Launched: 1
3. 134.205 137.115 ↓ 6.5 4,603 2

Nested Loop (cost=96.25..33,969.88 rows=709 width=83) (actual time=0.633..137.115 rows=4,603 loops=2)

  • Output: catalog_image_docker.repo, catalog_image_docker.tag, image_package_vulnerabilities.pkg_name, image_package_vulnerabilities.pkg_version, image_package_vulnerabilities.vulnerability_id
  • Worker 0: actual time=0.063..272.542 rows=9194 loops=1
4. 1.977 2.828 ↑ 1.1 1,580 2

Parallel Bitmap Heap Scan on public.catalog_image_docker (cost=95.56..4,521.52 rows=1,788 width=140) (actual time=0.588..2.828 rows=1,580 loops=2)

  • Output: catalog_image_docker."imageDigest", catalog_image_docker."userId", catalog_image_docker.registry, catalog_image_docker.repo, catalog_image_docker.tag, catalog_image_docker.created_at, catalog_image_docker.last_updated, catalog_image_docker.tag
  • Recheck Cond: ((catalog_image_docker."userId")::text = 'tenant_1CjgdxSBB14nDMj5sEWWNeovSI0'::text)
  • Heap Blocks: exact=4
  • Worker 0: actual time=0.022..4.496 rows=3155 loops=1
5. 0.851 0.851 ↓ 1.0 3,159 1

Bitmap Index Scan on catalog_image_docker_hash_userid (cost=0.00..94.80 rows=3,040 width=0) (actual time=0.851..0.851 rows=3,159 loops=1)

  • Index Cond: ((catalog_image_docker."userId")::text = 'tenant_1CjgdxSBB14nDMj5sEWWNeovSI0'::text)
6. 0.082 0.082 ↓ 3.0 3 3,159

Index Only Scan using image_package_vulnerabilities_pkey on public.image_package_vulnerabilities (cost=0.69..16.46 rows=1 width=143) (actual time=0.032..0.082 rows=3 loops=3,159)

  • Output: image_package_vulnerabilities.pkg_user_id, image_package_vulnerabilities.pkg_image_id, image_package_vulnerabilities.pkg_name, image_package_vulnerabilities.pkg_version, image_package_vulnerabilities.pkg_type, image_package_vulnerabilities.pkg
  • Index Cond: ((image_package_vulnerabilities.pkg_user_id = 'tenant_1CjgdxSBB14nDMj5sEWWNeovSI0'::text) AND (image_package_vulnerabilities.pkg_image_id = (catalog_image_docker."imageId")::text) AND (image_package_vulnerabilities.vulnerability_id = 'CVE-
  • Heap Fetches: 10
  • Worker 0: actual time=0.032..0.082 rows=3 loops=3155
7. 156.377 156.502 ↑ 1.1 80 9,206

Materialize (cost=8.15..84.19 rows=90 width=159) (actual time=0.000..0.017 rows=80 loops=9,206)

  • Output: feed_data_vulnerabilities.id, feed_data_vulnerabilities.link, feed_data_vulnerabilities.severity, feed_data_vulnerabilities_fixed_artifacts.fix_metadata
8. 0.036 0.125 ↑ 1.1 80 1

Nested Loop (cost=8.15..83.74 rows=90 width=159) (actual time=0.046..0.125 rows=80 loops=1)

  • Output: feed_data_vulnerabilities.id, feed_data_vulnerabilities.link, feed_data_vulnerabilities.severity, feed_data_vulnerabilities_fixed_artifacts.fix_metadata
9. 0.016 0.033 ↑ 1.2 8 1

Bitmap Heap Scan on public.feed_data_vulnerabilities_fixed_artifacts (cost=4.08..43.12 rows=10 width=97) (actual time=0.023..0.033 rows=8 loops=1)

  • Output: feed_data_vulnerabilities_fixed_artifacts.vulnerability_id, feed_data_vulnerabilities_fixed_artifacts.namespace_name, feed_data_vulnerabilities_fixed_artifacts.name, feed_data_vulnerabilities_fixed_artifacts.version, feed_data_vulnerabilities_
  • Recheck Cond: ((feed_data_vulnerabilities_fixed_artifacts.vulnerability_id)::text = 'CVE-2016-10739'::text)
  • Heap Blocks: exact=8
10. 0.017 0.017 ↑ 1.2 8 1

Bitmap Index Scan on cve_idx_fix_hash (cost=0.00..4.08 rows=10 width=0) (actual time=0.017..0.017 rows=8 loops=1)

  • Index Cond: ((feed_data_vulnerabilities_fixed_artifacts.vulnerability_id)::text = 'CVE-2016-10739'::text)
11. 0.030 0.056 ↓ 1.1 10 8

Materialize (cost=4.07..39.52 rows=9 width=76) (actual time=0.003..0.007 rows=10 loops=8)

  • Output: feed_data_vulnerabilities.id, feed_data_vulnerabilities.link, feed_data_vulnerabilities.severity
12. 0.015 0.026 ↓ 1.1 10 1

Bitmap Heap Scan on public.feed_data_vulnerabilities (cost=4.07..39.48 rows=9 width=76) (actual time=0.014..0.026 rows=10 loops=1)

  • Output: feed_data_vulnerabilities.id, feed_data_vulnerabilities.link, feed_data_vulnerabilities.severity
  • Recheck Cond: ((feed_data_vulnerabilities.id)::text = 'CVE-2016-10739'::text)
  • Heap Blocks: exact=10
13. 0.011 0.011 ↓ 1.1 10 1

Bitmap Index Scan on cve_idx_hash (cost=0.00..4.07 rows=9 width=0) (actual time=0.011..0.011 rows=10 loops=1)

  • Index Cond: ((feed_data_vulnerabilities.id)::text = 'CVE-2016-10739'::text)
Planning time : 1.434 ms
Execution time : 668.340 ms