explain.depesz.com

PostgreSQL's explain analyze made readable

Result: OhBN

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

Unique (cost=14.07..16.38 rows=12 width=766) (actual rows= loops=)

2. 0.000 0.000 ↓ 0.0

Sort (cost=14.07..14.10 rows=12 width=766) (actual rows= loops=)

  • Sort Key: projects.id, projects.name, projects.path, projects.description, projects.created_at, projects.updated_at, projects.creator_id, projects.last_activity_at, projects.import_url, projects.visibility_level, projects.archived, projects.avatar, projects.merge_requests_template, projects.star_count, projects.merge_requests_rebase_enabled, projects.import_type, projects.import_source, projects.approvals_before_merge, projects.reset_approvals_on_push, projects.merge_requests_ff_only_enabled, projects.issues_template, projects.mirror, projects.mirror_last_update_at, projects.mirror_last_successful_update_at, projects.mirror_user_id, projects.shared_runners_enabled, projects.runners_token, projects.build_coverage_regex, projects.build_allow_git_fetch, projects.build_timeout, projects.mirror_trigger_builds, projects.pending_delete, projects.public_builds, projects.last_repository_check_failed, projects.last_repository_check_at, projects.container_registry_enabled, projects.only_allow_merge_if_pipeline_succeeds, projects.has_external_issue_tracker, projects.repository_storage, projects.repository_read_only, projects.request_access_enabled, projects.has_external_wiki, projects.ci_config_path, projects.lfs_enabled, projects.description_html, projects.only_allow_merge_if_all_discussions_are_resolved, projects.repository_size_limit, projects.printing_merge_request_link_enabled, projects.auto_cancel_pending_pipelines, projects.service_desk_enabled, projects.cached_markdown_version, projects.delete_error, projects.last_repository_updated_at, projects.disable_overriding_approvers_per_merge_request, projects.storage_version, projects.resolve_outdated_diff_discussions, projects.remote_mirror_available_overridden, projects.only_mirror_protected_branches, projects.pull_mirror_available_overridden, projects.jobs_cache_index, projects.external_authorization_classification_label, projects.mirror_overwrites_diverged_branches, projects.pages_https_only, projects.external_webhook_token, projects.packages_enabled, projects.merge_requests_author_approval, projects.pool_repository_id, projects.runners_token_encrypted, projects.bfg_object_map, projects.merge_requests_require_code_owner_approval, projects.detected_repository_languages, projects.merge_requests_disable_committers_approval, projects.require_password_to_approve, projects.emails_disabled, projects.max_pages_size, projects.max_artifacts_size
3. 0.000 0.000 ↓ 0.0

Hash Anti Join (cost=7.19..13.85 rows=12 width=766) (actual rows= loops=)

  • Hash Cond: (vulnerability_occurrences.project_fingerprint = decode((vulnerability_feedback.project_fingerprint)::text, 'escape'::text))
4. 0.000 0.000 ↓ 0.0

Nested Loop (cost=0.14..6.58 rows=25 width=798) (actual rows= loops=)

5. 0.000 0.000 ↓ 0.0

Seq Scan on projects (cost=0.00..2.24 rows=2 width=766) (actual rows= loops=)

  • Filter: (namespace_id = 2)
6. 0.000 0.000 ↓ 0.0

Index Scan using index_vulnerability_occurrences_on_unique_keys on vulnerability_occurrences (cost=0.14..2.16 rows=1 width=36) (actual rows= loops=)

  • Index Cond: (project_id = projects.id)
7. 0.000 0.000 ↓ 0.0

Hash (cost=7.02..7.02 rows=2 width=98) (actual rows= loops=)

8. 0.000 0.000 ↓ 0.0

Index Only Scan using vulnerability_feedback_unique_idx on vulnerability_feedback (cost=0.15..7.02 rows=2 width=98) (actual rows= loops=)

  • Index Cond: (feedback_type = 0)