diff options
Diffstat (limited to 'db/structure.sql')
-rw-r--r-- | db/structure.sql | 820 |
1 files changed, 770 insertions, 50 deletions
diff --git a/db/structure.sql b/db/structure.sql index f29f9178a26..105b7701409 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -8811,6 +8811,7 @@ CREATE TABLE alert_management_alerts ( payload jsonb DEFAULT '{}'::jsonb NOT NULL, prometheus_alert_id integer, environment_id integer, + domain smallint DEFAULT 0, CONSTRAINT check_2df3e2fdc1 CHECK ((char_length(monitoring_tool) <= 100)), CONSTRAINT check_5e9e57cadb CHECK ((char_length(description) <= 1000)), CONSTRAINT check_bac14dddde CHECK ((char_length(service) <= 100)), @@ -8836,6 +8837,8 @@ CREATE TABLE alert_management_http_integrations ( encrypted_token_iv text NOT NULL, endpoint_identifier text NOT NULL, name text NOT NULL, + payload_example jsonb DEFAULT '{}'::jsonb NOT NULL, + payload_attribute_mapping jsonb DEFAULT '{}'::jsonb NOT NULL, CONSTRAINT check_286943b636 CHECK ((char_length(encrypted_token_iv) <= 255)), CONSTRAINT check_392143ccf4 CHECK ((char_length(name) <= 255)), CONSTRAINT check_e270820180 CHECK ((char_length(endpoint_identifier) <= 255)), @@ -8990,6 +8993,28 @@ CREATE SEQUENCE analytics_devops_adoption_segments_id_seq ALTER SEQUENCE analytics_devops_adoption_segments_id_seq OWNED BY analytics_devops_adoption_segments.id; +CREATE TABLE analytics_devops_adoption_snapshots ( + id bigint NOT NULL, + segment_id bigint NOT NULL, + recorded_at timestamp with time zone NOT NULL, + issue_opened boolean NOT NULL, + merge_request_opened boolean NOT NULL, + merge_request_approved boolean NOT NULL, + runner_configured boolean NOT NULL, + pipeline_succeeded boolean NOT NULL, + deploy_succeeded boolean NOT NULL, + security_scan_succeeded boolean NOT NULL +); + +CREATE SEQUENCE analytics_devops_adoption_snapshots_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE analytics_devops_adoption_snapshots_id_seq OWNED BY analytics_devops_adoption_snapshots.id; + CREATE TABLE analytics_instance_statistics_measurements ( id bigint NOT NULL, count bigint NOT NULL, @@ -9320,6 +9345,8 @@ CREATE TABLE application_settings ( elasticsearch_indexed_file_size_limit_kb integer DEFAULT 1024 NOT NULL, enforce_namespace_storage_limit boolean DEFAULT false NOT NULL, container_registry_delete_tags_service_timeout integer DEFAULT 250 NOT NULL, + kroki_url character varying, + kroki_enabled boolean, elasticsearch_client_request_timeout integer DEFAULT 0 NOT NULL, gitpod_enabled boolean DEFAULT false NOT NULL, gitpod_url text DEFAULT 'https://gitpod.io/'::text, @@ -9345,10 +9372,15 @@ CREATE TABLE application_settings ( encrypted_cloud_license_auth_token text, encrypted_cloud_license_auth_token_iv text, secret_detection_revocation_token_types_url text, + cloud_license_enabled boolean DEFAULT false NOT NULL, + disable_feed_token boolean DEFAULT false NOT NULL, + personal_access_token_prefix text, CONSTRAINT app_settings_registry_exp_policies_worker_capacity_positive CHECK ((container_registry_expiration_policies_worker_capacity >= 0)), + CONSTRAINT check_17d9558205 CHECK ((char_length((kroki_url)::text) <= 1024)), CONSTRAINT check_2dba05b802 CHECK ((char_length(gitpod_url) <= 255)), CONSTRAINT check_51700b31b5 CHECK ((char_length(default_branch_name) <= 255)), CONSTRAINT check_57123c9593 CHECK ((char_length(help_page_documentation_base_url) <= 255)), + CONSTRAINT check_718b4458ae CHECK ((char_length(personal_access_token_prefix) <= 20)), CONSTRAINT check_85a39b68ff CHECK ((char_length(encrypted_ci_jwt_signing_key_iv) <= 255)), CONSTRAINT check_9a719834eb CHECK ((char_length(secret_detection_token_revocation_url) <= 255)), CONSTRAINT check_9c6c447a13 CHECK ((char_length(maintenance_mode_message) <= 255)), @@ -9820,9 +9852,63 @@ CREATE TABLE boards ( group_id integer, weight integer, hide_backlog_list boolean DEFAULT false NOT NULL, - hide_closed_list boolean DEFAULT false NOT NULL + hide_closed_list boolean DEFAULT false NOT NULL, + iteration_id bigint ); +CREATE TABLE boards_epic_board_labels ( + id bigint NOT NULL, + epic_board_id bigint NOT NULL, + label_id bigint NOT NULL +); + +CREATE SEQUENCE boards_epic_board_labels_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE boards_epic_board_labels_id_seq OWNED BY boards_epic_board_labels.id; + +CREATE TABLE boards_epic_board_positions ( + id bigint NOT NULL, + epic_board_id bigint NOT NULL, + epic_id bigint NOT NULL, + relative_position integer, + created_at timestamp with time zone NOT NULL, + updated_at timestamp with time zone NOT NULL +); + +CREATE SEQUENCE boards_epic_board_positions_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE boards_epic_board_positions_id_seq OWNED BY boards_epic_board_positions.id; + +CREATE TABLE boards_epic_boards ( + id bigint NOT NULL, + hide_backlog_list boolean DEFAULT false NOT NULL, + hide_closed_list boolean DEFAULT false NOT NULL, + group_id bigint NOT NULL, + created_at timestamp with time zone NOT NULL, + updated_at timestamp with time zone NOT NULL, + name text DEFAULT 'Development'::text NOT NULL, + CONSTRAINT check_bcbbffe601 CHECK ((char_length(name) <= 255)) +); + +CREATE SEQUENCE boards_epic_boards_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE boards_epic_boards_id_seq OWNED BY boards_epic_boards.id; + CREATE TABLE boards_epic_user_preferences ( id bigint NOT NULL, board_id bigint NOT NULL, @@ -9923,6 +10009,29 @@ CREATE SEQUENCE bulk_import_entities_id_seq ALTER SEQUENCE bulk_import_entities_id_seq OWNED BY bulk_import_entities.id; +CREATE TABLE bulk_import_failures ( + id bigint NOT NULL, + bulk_import_entity_id bigint NOT NULL, + created_at timestamp with time zone NOT NULL, + pipeline_class text NOT NULL, + exception_class text NOT NULL, + exception_message text NOT NULL, + correlation_id_value text, + CONSTRAINT check_053d65c7a4 CHECK ((char_length(pipeline_class) <= 255)), + CONSTRAINT check_6eca8f972e CHECK ((char_length(exception_message) <= 255)), + CONSTRAINT check_c7dba8398e CHECK ((char_length(exception_class) <= 255)), + CONSTRAINT check_e787285882 CHECK ((char_length(correlation_id_value) <= 255)) +); + +CREATE SEQUENCE bulk_import_failures_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE bulk_import_failures_id_seq OWNED BY bulk_import_failures.id; + CREATE TABLE bulk_import_trackers ( id bigint NOT NULL, bulk_import_entity_id bigint NOT NULL, @@ -10024,7 +10133,8 @@ CREATE TABLE ci_build_pending_states ( build_id bigint NOT NULL, state smallint, failure_reason smallint, - trace_checksum bytea + trace_checksum bytea, + trace_bytesize bigint ); CREATE SEQUENCE ci_build_pending_states_id_seq @@ -11290,6 +11400,7 @@ CREATE TABLE compliance_management_frameworks ( description text NOT NULL, color text NOT NULL, namespace_id integer NOT NULL, + regulated boolean DEFAULT true NOT NULL, CONSTRAINT check_08cd34b2c2 CHECK ((char_length(color) <= 10)), CONSTRAINT check_1617e0b87e CHECK ((char_length(description) <= 255)), CONSTRAINT check_ab00bc2193 CHECK ((char_length(name) <= 255)) @@ -11326,7 +11437,8 @@ CREATE TABLE container_repositories ( updated_at timestamp without time zone NOT NULL, status smallint, expiration_policy_started_at timestamp with time zone, - expiration_policy_cleanup_status smallint DEFAULT 0 NOT NULL + expiration_policy_cleanup_status smallint DEFAULT 0 NOT NULL, + expiration_policy_completed_at timestamp with time zone ); CREATE SEQUENCE container_repositories_id_seq @@ -11567,6 +11679,30 @@ CREATE SEQUENCE dependency_proxy_group_settings_id_seq ALTER SEQUENCE dependency_proxy_group_settings_id_seq OWNED BY dependency_proxy_group_settings.id; +CREATE TABLE dependency_proxy_manifests ( + id bigint NOT NULL, + created_at timestamp with time zone NOT NULL, + updated_at timestamp with time zone NOT NULL, + group_id bigint NOT NULL, + size bigint, + file_store smallint, + file_name text NOT NULL, + file text NOT NULL, + digest text NOT NULL, + CONSTRAINT check_079b293a7b CHECK ((char_length(file) <= 255)), + CONSTRAINT check_c579e3f586 CHECK ((char_length(file_name) <= 255)), + CONSTRAINT check_f5d9996bf1 CHECK ((char_length(digest) <= 255)) +); + +CREATE SEQUENCE dependency_proxy_manifests_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE dependency_proxy_manifests_id_seq OWNED BY dependency_proxy_manifests.id; + CREATE TABLE deploy_keys_projects ( id integer NOT NULL, deploy_key_id integer NOT NULL, @@ -11820,13 +11956,13 @@ ALTER SEQUENCE elastic_reindexing_tasks_id_seq OWNED BY elastic_reindexing_tasks CREATE TABLE elasticsearch_indexed_namespaces ( created_at timestamp with time zone NOT NULL, updated_at timestamp with time zone NOT NULL, - namespace_id integer + namespace_id integer NOT NULL ); CREATE TABLE elasticsearch_indexed_projects ( created_at timestamp with time zone NOT NULL, updated_at timestamp with time zone NOT NULL, - project_id integer + project_id integer NOT NULL ); CREATE TABLE emails ( @@ -12008,13 +12144,36 @@ CREATE SEQUENCE evidences_id_seq ALTER SEQUENCE evidences_id_seq OWNED BY evidences.id; +CREATE TABLE experiment_subjects ( + id bigint NOT NULL, + experiment_id bigint NOT NULL, + user_id bigint, + group_id bigint, + project_id bigint, + variant smallint DEFAULT 0 NOT NULL, + created_at timestamp with time zone NOT NULL, + updated_at timestamp with time zone NOT NULL, + CONSTRAINT chk_has_one_subject CHECK ((num_nonnulls(user_id, group_id, project_id) = 1)) +); + +CREATE SEQUENCE experiment_subjects_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE experiment_subjects_id_seq OWNED BY experiment_subjects.id; + CREATE TABLE experiment_users ( id bigint NOT NULL, experiment_id bigint NOT NULL, user_id bigint NOT NULL, group_type smallint DEFAULT 0 NOT NULL, created_at timestamp with time zone NOT NULL, - updated_at timestamp with time zone NOT NULL + updated_at timestamp with time zone NOT NULL, + converted_at timestamp with time zone, + context jsonb DEFAULT '{}'::jsonb NOT NULL ); CREATE SEQUENCE experiment_users_id_seq @@ -12857,6 +13016,67 @@ CREATE SEQUENCE import_failures_id_seq ALTER SEQUENCE import_failures_id_seq OWNED BY import_failures.id; +CREATE TABLE incident_management_oncall_participants ( + id bigint NOT NULL, + oncall_rotation_id bigint NOT NULL, + user_id bigint NOT NULL, + color_palette smallint NOT NULL, + color_weight smallint NOT NULL +); + +CREATE SEQUENCE incident_management_oncall_participants_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE incident_management_oncall_participants_id_seq OWNED BY incident_management_oncall_participants.id; + +CREATE TABLE incident_management_oncall_rotations ( + id bigint NOT NULL, + created_at timestamp with time zone NOT NULL, + updated_at timestamp with time zone NOT NULL, + oncall_schedule_id bigint NOT NULL, + length integer NOT NULL, + length_unit smallint NOT NULL, + starts_at timestamp with time zone NOT NULL, + name text NOT NULL, + CONSTRAINT check_5209fb5d02 CHECK ((char_length(name) <= 200)) +); + +CREATE SEQUENCE incident_management_oncall_rotations_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE incident_management_oncall_rotations_id_seq OWNED BY incident_management_oncall_rotations.id; + +CREATE TABLE incident_management_oncall_schedules ( + id bigint NOT NULL, + created_at timestamp with time zone NOT NULL, + updated_at timestamp with time zone NOT NULL, + project_id bigint NOT NULL, + iid integer NOT NULL, + name text NOT NULL, + description text, + timezone text, + CONSTRAINT check_7ed1fd5aa7 CHECK ((char_length(description) <= 1000)), + CONSTRAINT check_cc77cbb103 CHECK ((char_length(timezone) <= 100)), + CONSTRAINT check_e6ef43a664 CHECK ((char_length(name) <= 200)) +); + +CREATE SEQUENCE incident_management_oncall_schedules_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE incident_management_oncall_schedules_id_seq OWNED BY incident_management_oncall_schedules.id; + CREATE TABLE index_statuses ( id integer NOT NULL, project_id integer NOT NULL, @@ -12925,6 +13145,27 @@ CREATE SEQUENCE ip_restrictions_id_seq ALTER SEQUENCE ip_restrictions_id_seq OWNED BY ip_restrictions.id; +CREATE TABLE issuable_metric_images ( + id bigint NOT NULL, + issue_id bigint NOT NULL, + created_at timestamp with time zone NOT NULL, + updated_at timestamp with time zone NOT NULL, + file_store smallint, + file text NOT NULL, + url text, + CONSTRAINT check_5b3011e234 CHECK ((char_length(url) <= 255)), + CONSTRAINT check_7ed527062f CHECK ((char_length(file) <= 255)) +); + +CREATE SEQUENCE issuable_metric_images_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE issuable_metric_images_id_seq OWNED BY issuable_metric_images.id; + CREATE TABLE issuable_severities ( id bigint NOT NULL, issue_id bigint NOT NULL, @@ -13417,7 +13658,8 @@ CREATE TABLE lists ( milestone_id integer, max_issue_count integer DEFAULT 0 NOT NULL, max_issue_weight integer DEFAULT 0 NOT NULL, - limit_metric character varying(20) + limit_metric character varying(20), + iteration_id bigint ); CREATE SEQUENCE lists_id_seq @@ -13521,7 +13763,7 @@ CREATE TABLE merge_request_context_commit_diff_files ( old_path text NOT NULL, diff text, "binary" boolean, - merge_request_context_commit_id bigint + merge_request_context_commit_id bigint NOT NULL ); CREATE TABLE merge_request_context_commits ( @@ -13611,6 +13853,7 @@ CREATE TABLE merge_request_diffs ( external_diff_store integer DEFAULT 1, stored_externally boolean, files_count smallint, + sorted boolean DEFAULT false NOT NULL, CONSTRAINT check_93ee616ac9 CHECK ((external_diff_store IS NOT NULL)) ); @@ -13868,6 +14111,22 @@ CREATE TABLE namespace_limits ( temporary_storage_increase_ends_on date ); +CREATE TABLE namespace_onboarding_actions ( + id bigint NOT NULL, + namespace_id bigint NOT NULL, + created_at timestamp with time zone NOT NULL, + action smallint NOT NULL +); + +CREATE SEQUENCE namespace_onboarding_actions_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE namespace_onboarding_actions_id_seq OWNED BY namespace_onboarding_actions.id; + CREATE TABLE namespace_root_storage_statistics ( namespace_id integer NOT NULL, updated_at timestamp with time zone NOT NULL, @@ -14485,6 +14744,8 @@ CREATE TABLE packages_package_files ( verification_failure character varying(255), verification_retry_count integer, verification_checksum bytea, + verification_state smallint DEFAULT 0 NOT NULL, + verification_started_at timestamp with time zone, CONSTRAINT check_4c5e6bb0b3 CHECK ((file_store IS NOT NULL)) ); @@ -14732,7 +14993,9 @@ CREATE TABLE plan_limits ( golang_max_file_size bigint DEFAULT 104857600 NOT NULL, debian_max_file_size bigint DEFAULT '3221225472'::bigint NOT NULL, project_feature_flags integer DEFAULT 200 NOT NULL, - ci_max_artifact_size_api_fuzzing integer DEFAULT 0 NOT NULL + ci_max_artifact_size_api_fuzzing integer DEFAULT 0 NOT NULL, + ci_pipeline_deployments integer DEFAULT 500 NOT NULL, + pull_mirror_interval_seconds integer DEFAULT 300 NOT NULL ); CREATE SEQUENCE plan_limits_id_seq @@ -14778,11 +15041,124 @@ CREATE SEQUENCE pool_repositories_id_seq ALTER SEQUENCE pool_repositories_id_seq OWNED BY pool_repositories.id; +CREATE VIEW postgres_index_bloat_estimates AS + SELECT (((relation_stats.nspname)::text || '.'::text) || (relation_stats.idxname)::text) AS identifier, + ( + CASE + WHEN ((relation_stats.relpages)::double precision > relation_stats.est_pages_ff) THEN ((relation_stats.bs)::double precision * ((relation_stats.relpages)::double precision - relation_stats.est_pages_ff)) + ELSE (0)::double precision + END)::bigint AS bloat_size_bytes + FROM ( SELECT COALESCE(((1)::double precision + ceil((rows_hdr_pdg_stats.reltuples / floor((((((rows_hdr_pdg_stats.bs - (rows_hdr_pdg_stats.pageopqdata)::numeric) - (rows_hdr_pdg_stats.pagehdr)::numeric) * (rows_hdr_pdg_stats.fillfactor)::numeric))::double precision / ((100)::double precision * (((4)::numeric + rows_hdr_pdg_stats.nulldatahdrwidth))::double precision)))))), (0)::double precision) AS est_pages_ff, + rows_hdr_pdg_stats.bs, + rows_hdr_pdg_stats.nspname, + rows_hdr_pdg_stats.tblname, + rows_hdr_pdg_stats.idxname, + rows_hdr_pdg_stats.relpages, + rows_hdr_pdg_stats.is_na + FROM ( SELECT rows_data_stats.maxalign, + rows_data_stats.bs, + rows_data_stats.nspname, + rows_data_stats.tblname, + rows_data_stats.idxname, + rows_data_stats.reltuples, + rows_data_stats.relpages, + rows_data_stats.idxoid, + rows_data_stats.fillfactor, + (((((((rows_data_stats.index_tuple_hdr_bm + rows_data_stats.maxalign) - + CASE + WHEN ((rows_data_stats.index_tuple_hdr_bm % rows_data_stats.maxalign) = 0) THEN rows_data_stats.maxalign + ELSE (rows_data_stats.index_tuple_hdr_bm % rows_data_stats.maxalign) + END))::double precision + rows_data_stats.nulldatawidth) + (rows_data_stats.maxalign)::double precision) - ( + CASE + WHEN (rows_data_stats.nulldatawidth = (0)::double precision) THEN 0 + WHEN (((rows_data_stats.nulldatawidth)::integer % rows_data_stats.maxalign) = 0) THEN rows_data_stats.maxalign + ELSE ((rows_data_stats.nulldatawidth)::integer % rows_data_stats.maxalign) + END)::double precision))::numeric AS nulldatahdrwidth, + rows_data_stats.pagehdr, + rows_data_stats.pageopqdata, + rows_data_stats.is_na + FROM ( SELECT n.nspname, + i.tblname, + i.idxname, + i.reltuples, + i.relpages, + i.idxoid, + i.fillfactor, + (current_setting('block_size'::text))::numeric AS bs, + CASE + WHEN ((version() ~ 'mingw32'::text) OR (version() ~ '64-bit|x86_64|ppc64|ia64|amd64'::text)) THEN 8 + ELSE 4 + END AS maxalign, + 24 AS pagehdr, + 16 AS pageopqdata, + CASE + WHEN (max(COALESCE(s.null_frac, (0)::real)) = (0)::double precision) THEN 2 + ELSE (2 + (((32 + 8) - 1) / 8)) + END AS index_tuple_hdr_bm, + sum((((1)::double precision - COALESCE(s.null_frac, (0)::real)) * (COALESCE(s.avg_width, 1024))::double precision)) AS nulldatawidth, + (max( + CASE + WHEN (i.atttypid = ('name'::regtype)::oid) THEN 1 + ELSE 0 + END) > 0) AS is_na + FROM ((( SELECT ct.relname AS tblname, + ct.relnamespace, + ic.idxname, + ic.attpos, + ic.indkey, + ic.indkey[ic.attpos] AS indkey, + ic.reltuples, + ic.relpages, + ic.tbloid, + ic.idxoid, + ic.fillfactor, + COALESCE(a1.attnum, a2.attnum) AS attnum, + COALESCE(a1.attname, a2.attname) AS attname, + COALESCE(a1.atttypid, a2.atttypid) AS atttypid, +CASE + WHEN (a1.attnum IS NULL) THEN ic.idxname + ELSE ct.relname +END AS attrelname + FROM (((( SELECT idx_data.idxname, + idx_data.reltuples, + idx_data.relpages, + idx_data.tbloid, + idx_data.idxoid, + idx_data.fillfactor, + idx_data.indkey, + generate_series(1, (idx_data.indnatts)::integer) AS attpos + FROM ( SELECT ci.relname AS idxname, + ci.reltuples, + ci.relpages, + i_1.indrelid AS tbloid, + i_1.indexrelid AS idxoid, + COALESCE((("substring"(array_to_string(ci.reloptions, ' '::text), 'fillfactor=([0-9]+)'::text))::smallint)::integer, 90) AS fillfactor, + i_1.indnatts, + (string_to_array(textin(int2vectorout(i_1.indkey)), ' '::text))::integer[] AS indkey + FROM (pg_index i_1 + JOIN pg_class ci ON ((ci.oid = i_1.indexrelid))) + WHERE ((ci.relam = ( SELECT pg_am.oid + FROM pg_am + WHERE (pg_am.amname = 'btree'::name))) AND (ci.relpages > 0))) idx_data) ic + JOIN pg_class ct ON ((ct.oid = ic.tbloid))) + LEFT JOIN pg_attribute a1 ON (((ic.indkey[ic.attpos] <> 0) AND (a1.attrelid = ic.tbloid) AND (a1.attnum = ic.indkey[ic.attpos])))) + LEFT JOIN pg_attribute a2 ON (((ic.indkey[ic.attpos] = 0) AND (a2.attrelid = ic.idxoid) AND (a2.attnum = ic.attpos))))) i(tblname, relnamespace, idxname, attpos, indkey, indkey_1, reltuples, relpages, tbloid, idxoid, fillfactor, attnum, attname, atttypid, attrelname) + JOIN pg_namespace n ON ((n.oid = i.relnamespace))) + JOIN pg_stats s ON (((s.schemaname = n.nspname) AND (s.tablename = i.attrelname) AND (s.attname = i.attname)))) + GROUP BY n.nspname, i.tblname, i.idxname, i.reltuples, i.relpages, i.idxoid, i.fillfactor, (current_setting('block_size'::text))::numeric, + CASE + WHEN ((version() ~ 'mingw32'::text) OR (version() ~ '64-bit|x86_64|ppc64|ia64|amd64'::text)) THEN 8 + ELSE 4 + END, 24::integer, 16::integer) rows_data_stats) rows_hdr_pdg_stats) relation_stats + WHERE ((relation_stats.nspname = ANY (ARRAY["current_schema"(), 'gitlab_partitions_dynamic'::name, 'gitlab_partitions_static'::name])) AND (NOT relation_stats.is_na)) + ORDER BY relation_stats.nspname, relation_stats.tblname, relation_stats.idxname; + CREATE VIEW postgres_indexes AS SELECT (((pg_namespace.nspname)::text || '.'::text) || (pg_class.relname)::text) AS identifier, pg_index.indexrelid, pg_namespace.nspname AS schema, pg_class.relname AS name, + pg_indexes.tablename, pg_index.indisunique AS "unique", pg_index.indisvalid AS valid_index, pg_class.relispartition AS partitioned, @@ -14847,6 +15223,7 @@ CREATE TABLE postgres_reindex_actions ( ondisk_size_bytes_end bigint, state smallint DEFAULT 0 NOT NULL, index_identifier text NOT NULL, + bloat_estimate_bytes_start bigint, CONSTRAINT check_f12527622c CHECK ((char_length(index_identifier) <= 255)) ); @@ -15061,7 +15438,9 @@ CREATE TABLE project_features ( pages_access_level integer NOT NULL, forking_access_level integer, metrics_dashboard_access_level integer, - requirements_access_level integer DEFAULT 20 NOT NULL + requirements_access_level integer DEFAULT 20 NOT NULL, + operations_access_level integer DEFAULT 20 NOT NULL, + analytics_access_level integer DEFAULT 20 NOT NULL ); CREATE SEQUENCE project_features_id_seq @@ -15261,6 +15640,7 @@ CREATE TABLE project_settings ( squash_option smallint DEFAULT 3, has_confluence boolean DEFAULT false NOT NULL, has_vulnerabilities boolean DEFAULT false NOT NULL, + allow_editing_commit_messages boolean DEFAULT false NOT NULL, CONSTRAINT check_bde223416c CHECK ((show_default_award_emojis IS NOT NULL)) ); @@ -16062,6 +16442,7 @@ CREATE TABLE security_findings ( project_fingerprint text NOT NULL, deduplicated boolean DEFAULT false NOT NULL, "position" integer, + uuid uuid, CONSTRAINT check_b9508c6df8 CHECK ((char_length(project_fingerprint) <= 40)) ); @@ -16625,7 +17006,7 @@ CREATE TABLE terraform_states ( locked_by_user_id bigint, uuid character varying(32) NOT NULL, name character varying(255), - versioning_enabled boolean DEFAULT false NOT NULL + versioning_enabled boolean DEFAULT true NOT NULL ); CREATE SEQUENCE terraform_states_id_seq @@ -16821,7 +17202,10 @@ CREATE TABLE user_details ( bio_html text, cached_markdown_version integer, webauthn_xid text, - CONSTRAINT check_245664af82 CHECK ((char_length(webauthn_xid) <= 100)) + other_role text, + provisioned_by_group_id bigint, + CONSTRAINT check_245664af82 CHECK ((char_length(webauthn_xid) <= 100)), + CONSTRAINT check_b132136b01 CHECK ((char_length(other_role) <= 100)) ); CREATE SEQUENCE user_details_user_id_seq @@ -16844,6 +17228,26 @@ CREATE TABLE user_interacted_projects ( project_id integer NOT NULL ); +CREATE TABLE user_permission_export_uploads ( + id bigint NOT NULL, + created_at timestamp with time zone NOT NULL, + updated_at timestamp with time zone NOT NULL, + user_id bigint NOT NULL, + file_store integer, + status smallint DEFAULT 0 NOT NULL, + file text, + CONSTRAINT check_1956806648 CHECK ((char_length(file) <= 255)) +); + +CREATE SEQUENCE user_permission_export_uploads_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE user_permission_export_uploads_id_seq OWNED BY user_permission_export_uploads.id; + CREATE TABLE user_preferences ( id integer NOT NULL, user_id integer NOT NULL, @@ -16867,7 +17271,6 @@ CREATE TABLE user_preferences ( setup_for_company boolean, render_whitespace_in_code boolean, tab_width smallint, - feature_filter_type bigint, experience_level smallint, view_diffs_file_by_file boolean DEFAULT false NOT NULL, gitpod_enabled boolean DEFAULT false NOT NULL @@ -17142,6 +17545,29 @@ CREATE SEQUENCE vulnerability_exports_id_seq ALTER SEQUENCE vulnerability_exports_id_seq OWNED BY vulnerability_exports.id; +CREATE TABLE vulnerability_external_issue_links ( + id bigint NOT NULL, + created_at timestamp with time zone NOT NULL, + updated_at timestamp with time zone NOT NULL, + author_id bigint NOT NULL, + vulnerability_id bigint NOT NULL, + link_type smallint DEFAULT 1 NOT NULL, + external_type smallint DEFAULT 1 NOT NULL, + external_project_key text NOT NULL, + external_issue_key text NOT NULL, + CONSTRAINT check_3200604f5e CHECK ((char_length(external_issue_key) <= 255)), + CONSTRAINT check_68cffd19b0 CHECK ((char_length(external_project_key) <= 255)) +); + +CREATE SEQUENCE vulnerability_external_issue_links_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE vulnerability_external_issue_links_id_seq OWNED BY vulnerability_external_issue_links.id; + CREATE TABLE vulnerability_feedback ( id integer NOT NULL, created_at timestamp with time zone NOT NULL, @@ -17156,7 +17582,8 @@ CREATE TABLE vulnerability_feedback ( merge_request_id integer, comment_author_id integer, comment text, - comment_timestamp timestamp with time zone + comment_timestamp timestamp with time zone, + finding_uuid uuid ); CREATE SEQUENCE vulnerability_feedback_id_seq @@ -17188,6 +17615,23 @@ CREATE SEQUENCE vulnerability_finding_links_id_seq ALTER SEQUENCE vulnerability_finding_links_id_seq OWNED BY vulnerability_finding_links.id; +CREATE TABLE vulnerability_findings_remediations ( + id bigint NOT NULL, + vulnerability_occurrence_id bigint, + vulnerability_remediation_id bigint, + created_at timestamp with time zone NOT NULL, + updated_at timestamp with time zone NOT NULL +); + +CREATE SEQUENCE vulnerability_findings_remediations_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE vulnerability_findings_remediations_id_seq OWNED BY vulnerability_findings_remediations.id; + CREATE TABLE vulnerability_historical_statistics ( id bigint NOT NULL, created_at timestamp with time zone NOT NULL, @@ -17302,7 +17746,8 @@ CREATE TABLE vulnerability_occurrences ( name character varying NOT NULL, metadata_version character varying NOT NULL, raw_metadata text NOT NULL, - vulnerability_id bigint + vulnerability_id bigint, + details jsonb DEFAULT '{}'::jsonb NOT NULL ); CREATE SEQUENCE vulnerability_occurrences_id_seq @@ -17314,6 +17759,30 @@ CREATE SEQUENCE vulnerability_occurrences_id_seq ALTER SEQUENCE vulnerability_occurrences_id_seq OWNED BY vulnerability_occurrences.id; +CREATE TABLE vulnerability_remediations ( + id bigint NOT NULL, + created_at timestamp with time zone NOT NULL, + updated_at timestamp with time zone NOT NULL, + file_store smallint, + summary text NOT NULL, + file text NOT NULL, + checksum bytea NOT NULL, + project_id bigint NOT NULL, + CONSTRAINT check_ac0ccabff3 CHECK ((char_length(summary) <= 200)), + CONSTRAINT check_fe3325e3ba CHECK ((char_length(file) <= 255)) +); + +COMMENT ON COLUMN vulnerability_remediations.checksum IS 'Stores the SHA256 checksum of the attached diff file'; + +CREATE SEQUENCE vulnerability_remediations_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + +ALTER SEQUENCE vulnerability_remediations_id_seq OWNED BY vulnerability_remediations.id; + CREATE TABLE vulnerability_scanners ( id bigint NOT NULL, created_at timestamp with time zone NOT NULL, @@ -17427,7 +17896,8 @@ CREATE TABLE web_hooks ( encrypted_url_iv character varying, deployment_events boolean DEFAULT false NOT NULL, releases_events boolean DEFAULT false NOT NULL, - feature_flag_events boolean DEFAULT false NOT NULL + feature_flag_events boolean DEFAULT false NOT NULL, + member_events boolean DEFAULT false NOT NULL ); CREATE SEQUENCE web_hooks_id_seq @@ -17449,8 +17919,8 @@ CREATE TABLE webauthn_registrations ( name text NOT NULL, public_key text NOT NULL, u2f_registration_id integer, - CONSTRAINT check_242f0cc65c CHECK ((char_length(credential_xid) <= 255)), - CONSTRAINT check_2f02e74321 CHECK ((char_length(name) <= 255)) + CONSTRAINT check_2f02e74321 CHECK ((char_length(name) <= 255)), + CONSTRAINT check_e54008d9ce CHECK ((char_length(credential_xid) <= 340)) ); CREATE SEQUENCE webauthn_registrations_id_seq @@ -17598,6 +18068,8 @@ ALTER TABLE ONLY analytics_devops_adoption_segment_selections ALTER COLUMN id SE ALTER TABLE ONLY analytics_devops_adoption_segments ALTER COLUMN id SET DEFAULT nextval('analytics_devops_adoption_segments_id_seq'::regclass); +ALTER TABLE ONLY analytics_devops_adoption_snapshots ALTER COLUMN id SET DEFAULT nextval('analytics_devops_adoption_snapshots_id_seq'::regclass); + ALTER TABLE ONLY analytics_instance_statistics_measurements ALTER COLUMN id SET DEFAULT nextval('analytics_instance_statistics_measurements_id_seq'::regclass); ALTER TABLE ONLY appearances ALTER COLUMN id SET DEFAULT nextval('appearances_id_seq'::regclass); @@ -17652,6 +18124,12 @@ ALTER TABLE ONLY board_user_preferences ALTER COLUMN id SET DEFAULT nextval('boa ALTER TABLE ONLY boards ALTER COLUMN id SET DEFAULT nextval('boards_id_seq'::regclass); +ALTER TABLE ONLY boards_epic_board_labels ALTER COLUMN id SET DEFAULT nextval('boards_epic_board_labels_id_seq'::regclass); + +ALTER TABLE ONLY boards_epic_board_positions ALTER COLUMN id SET DEFAULT nextval('boards_epic_board_positions_id_seq'::regclass); + +ALTER TABLE ONLY boards_epic_boards ALTER COLUMN id SET DEFAULT nextval('boards_epic_boards_id_seq'::regclass); + ALTER TABLE ONLY boards_epic_user_preferences ALTER COLUMN id SET DEFAULT nextval('boards_epic_user_preferences_id_seq'::regclass); ALTER TABLE ONLY broadcast_messages ALTER COLUMN id SET DEFAULT nextval('broadcast_messages_id_seq'::regclass); @@ -17660,6 +18138,8 @@ ALTER TABLE ONLY bulk_import_configurations ALTER COLUMN id SET DEFAULT nextval( ALTER TABLE ONLY bulk_import_entities ALTER COLUMN id SET DEFAULT nextval('bulk_import_entities_id_seq'::regclass); +ALTER TABLE ONLY bulk_import_failures ALTER COLUMN id SET DEFAULT nextval('bulk_import_failures_id_seq'::regclass); + ALTER TABLE ONLY bulk_import_trackers ALTER COLUMN id SET DEFAULT nextval('bulk_import_trackers_id_seq'::regclass); ALTER TABLE ONLY bulk_imports ALTER COLUMN id SET DEFAULT nextval('bulk_imports_id_seq'::regclass); @@ -17812,6 +18292,8 @@ ALTER TABLE ONLY dependency_proxy_blobs ALTER COLUMN id SET DEFAULT nextval('dep ALTER TABLE ONLY dependency_proxy_group_settings ALTER COLUMN id SET DEFAULT nextval('dependency_proxy_group_settings_id_seq'::regclass); +ALTER TABLE ONLY dependency_proxy_manifests ALTER COLUMN id SET DEFAULT nextval('dependency_proxy_manifests_id_seq'::regclass); + ALTER TABLE ONLY deploy_keys_projects ALTER COLUMN id SET DEFAULT nextval('deploy_keys_projects_id_seq'::regclass); ALTER TABLE ONLY deploy_tokens ALTER COLUMN id SET DEFAULT nextval('deploy_tokens_id_seq'::regclass); @@ -17850,6 +18332,8 @@ ALTER TABLE ONLY events ALTER COLUMN id SET DEFAULT nextval('events_id_seq'::reg ALTER TABLE ONLY evidences ALTER COLUMN id SET DEFAULT nextval('evidences_id_seq'::regclass); +ALTER TABLE ONLY experiment_subjects ALTER COLUMN id SET DEFAULT nextval('experiment_subjects_id_seq'::regclass); + ALTER TABLE ONLY experiment_users ALTER COLUMN id SET DEFAULT nextval('experiment_users_id_seq'::regclass); ALTER TABLE ONLY experiments ALTER COLUMN id SET DEFAULT nextval('experiments_id_seq'::regclass); @@ -17932,6 +18416,12 @@ ALTER TABLE ONLY import_export_uploads ALTER COLUMN id SET DEFAULT nextval('impo ALTER TABLE ONLY import_failures ALTER COLUMN id SET DEFAULT nextval('import_failures_id_seq'::regclass); +ALTER TABLE ONLY incident_management_oncall_participants ALTER COLUMN id SET DEFAULT nextval('incident_management_oncall_participants_id_seq'::regclass); + +ALTER TABLE ONLY incident_management_oncall_rotations ALTER COLUMN id SET DEFAULT nextval('incident_management_oncall_rotations_id_seq'::regclass); + +ALTER TABLE ONLY incident_management_oncall_schedules ALTER COLUMN id SET DEFAULT nextval('incident_management_oncall_schedules_id_seq'::regclass); + ALTER TABLE ONLY index_statuses ALTER COLUMN id SET DEFAULT nextval('index_statuses_id_seq'::regclass); ALTER TABLE ONLY insights ALTER COLUMN id SET DEFAULT nextval('insights_id_seq'::regclass); @@ -17940,6 +18430,8 @@ ALTER TABLE ONLY internal_ids ALTER COLUMN id SET DEFAULT nextval('internal_ids_ ALTER TABLE ONLY ip_restrictions ALTER COLUMN id SET DEFAULT nextval('ip_restrictions_id_seq'::regclass); +ALTER TABLE ONLY issuable_metric_images ALTER COLUMN id SET DEFAULT nextval('issuable_metric_images_id_seq'::regclass); + ALTER TABLE ONLY issuable_severities ALTER COLUMN id SET DEFAULT nextval('issuable_severities_id_seq'::regclass); ALTER TABLE ONLY issuable_slas ALTER COLUMN id SET DEFAULT nextval('issuable_slas_id_seq'::regclass); @@ -18018,6 +18510,8 @@ ALTER TABLE ONLY metrics_users_starred_dashboards ALTER COLUMN id SET DEFAULT ne ALTER TABLE ONLY milestones ALTER COLUMN id SET DEFAULT nextval('milestones_id_seq'::regclass); +ALTER TABLE ONLY namespace_onboarding_actions ALTER COLUMN id SET DEFAULT nextval('namespace_onboarding_actions_id_seq'::regclass); + ALTER TABLE ONLY namespace_statistics ALTER COLUMN id SET DEFAULT nextval('namespace_statistics_id_seq'::regclass); ALTER TABLE ONLY namespaces ALTER COLUMN id SET DEFAULT nextval('namespaces_id_seq'::regclass); @@ -18274,6 +18768,8 @@ ALTER TABLE ONLY user_custom_attributes ALTER COLUMN id SET DEFAULT nextval('use ALTER TABLE ONLY user_details ALTER COLUMN user_id SET DEFAULT nextval('user_details_user_id_seq'::regclass); +ALTER TABLE ONLY user_permission_export_uploads ALTER COLUMN id SET DEFAULT nextval('user_permission_export_uploads_id_seq'::regclass); + ALTER TABLE ONLY user_preferences ALTER COLUMN id SET DEFAULT nextval('user_preferences_id_seq'::regclass); ALTER TABLE ONLY user_statuses ALTER COLUMN user_id SET DEFAULT nextval('user_statuses_user_id_seq'::regclass); @@ -18292,10 +18788,14 @@ ALTER TABLE ONLY vulnerabilities ALTER COLUMN id SET DEFAULT nextval('vulnerabil ALTER TABLE ONLY vulnerability_exports ALTER COLUMN id SET DEFAULT nextval('vulnerability_exports_id_seq'::regclass); +ALTER TABLE ONLY vulnerability_external_issue_links ALTER COLUMN id SET DEFAULT nextval('vulnerability_external_issue_links_id_seq'::regclass); + ALTER TABLE ONLY vulnerability_feedback ALTER COLUMN id SET DEFAULT nextval('vulnerability_feedback_id_seq'::regclass); ALTER TABLE ONLY vulnerability_finding_links ALTER COLUMN id SET DEFAULT nextval('vulnerability_finding_links_id_seq'::regclass); +ALTER TABLE ONLY vulnerability_findings_remediations ALTER COLUMN id SET DEFAULT nextval('vulnerability_findings_remediations_id_seq'::regclass); + ALTER TABLE ONLY vulnerability_historical_statistics ALTER COLUMN id SET DEFAULT nextval('vulnerability_historical_statistics_id_seq'::regclass); ALTER TABLE ONLY vulnerability_identifiers ALTER COLUMN id SET DEFAULT nextval('vulnerability_identifiers_id_seq'::regclass); @@ -18308,6 +18808,8 @@ ALTER TABLE ONLY vulnerability_occurrence_pipelines ALTER COLUMN id SET DEFAULT ALTER TABLE ONLY vulnerability_occurrences ALTER COLUMN id SET DEFAULT nextval('vulnerability_occurrences_id_seq'::regclass); +ALTER TABLE ONLY vulnerability_remediations ALTER COLUMN id SET DEFAULT nextval('vulnerability_remediations_id_seq'::regclass); + ALTER TABLE ONLY vulnerability_scanners ALTER COLUMN id SET DEFAULT nextval('vulnerability_scanners_id_seq'::regclass); ALTER TABLE ONLY vulnerability_statistics ALTER COLUMN id SET DEFAULT nextval('vulnerability_statistics_id_seq'::regclass); @@ -18563,6 +19065,9 @@ ALTER TABLE ONLY analytics_devops_adoption_segment_selections ALTER TABLE ONLY analytics_devops_adoption_segments ADD CONSTRAINT analytics_devops_adoption_segments_pkey PRIMARY KEY (id); +ALTER TABLE ONLY analytics_devops_adoption_snapshots + ADD CONSTRAINT analytics_devops_adoption_snapshots_pkey PRIMARY KEY (id); + ALTER TABLE ONLY analytics_instance_statistics_measurements ADD CONSTRAINT analytics_instance_statistics_measurements_pkey PRIMARY KEY (id); @@ -18659,6 +19164,15 @@ ALTER TABLE ONLY board_project_recent_visits ALTER TABLE ONLY board_user_preferences ADD CONSTRAINT board_user_preferences_pkey PRIMARY KEY (id); +ALTER TABLE ONLY boards_epic_board_labels + ADD CONSTRAINT boards_epic_board_labels_pkey PRIMARY KEY (id); + +ALTER TABLE ONLY boards_epic_board_positions + ADD CONSTRAINT boards_epic_board_positions_pkey PRIMARY KEY (id); + +ALTER TABLE ONLY boards_epic_boards + ADD CONSTRAINT boards_epic_boards_pkey PRIMARY KEY (id); + ALTER TABLE ONLY boards_epic_user_preferences ADD CONSTRAINT boards_epic_user_preferences_pkey PRIMARY KEY (id); @@ -18674,6 +19188,9 @@ ALTER TABLE ONLY bulk_import_configurations ALTER TABLE ONLY bulk_import_entities ADD CONSTRAINT bulk_import_entities_pkey PRIMARY KEY (id); +ALTER TABLE ONLY bulk_import_failures + ADD CONSTRAINT bulk_import_failures_pkey PRIMARY KEY (id); + ALTER TABLE ONLY bulk_import_trackers ADD CONSTRAINT bulk_import_trackers_pkey PRIMARY KEY (id); @@ -18914,6 +19431,9 @@ ALTER TABLE ONLY dependency_proxy_blobs ALTER TABLE ONLY dependency_proxy_group_settings ADD CONSTRAINT dependency_proxy_group_settings_pkey PRIMARY KEY (id); +ALTER TABLE ONLY dependency_proxy_manifests + ADD CONSTRAINT dependency_proxy_manifests_pkey PRIMARY KEY (id); + ALTER TABLE ONLY deploy_keys_projects ADD CONSTRAINT deploy_keys_projects_pkey PRIMARY KEY (id); @@ -18953,6 +19473,12 @@ ALTER TABLE ONLY draft_notes ALTER TABLE ONLY elastic_reindexing_tasks ADD CONSTRAINT elastic_reindexing_tasks_pkey PRIMARY KEY (id); +ALTER TABLE ONLY elasticsearch_indexed_namespaces + ADD CONSTRAINT elasticsearch_indexed_namespaces_pkey PRIMARY KEY (namespace_id); + +ALTER TABLE ONLY elasticsearch_indexed_projects + ADD CONSTRAINT elasticsearch_indexed_projects_pkey PRIMARY KEY (project_id); + ALTER TABLE ONLY emails ADD CONSTRAINT emails_pkey PRIMARY KEY (id); @@ -18977,6 +19503,9 @@ ALTER TABLE ONLY events ALTER TABLE ONLY evidences ADD CONSTRAINT evidences_pkey PRIMARY KEY (id); +ALTER TABLE ONLY experiment_subjects + ADD CONSTRAINT experiment_subjects_pkey PRIMARY KEY (id); + ALTER TABLE ONLY experiment_users ADD CONSTRAINT experiment_users_pkey PRIMARY KEY (id); @@ -19106,6 +19635,15 @@ ALTER TABLE ONLY import_export_uploads ALTER TABLE ONLY import_failures ADD CONSTRAINT import_failures_pkey PRIMARY KEY (id); +ALTER TABLE ONLY incident_management_oncall_participants + ADD CONSTRAINT incident_management_oncall_participants_pkey PRIMARY KEY (id); + +ALTER TABLE ONLY incident_management_oncall_rotations + ADD CONSTRAINT incident_management_oncall_rotations_pkey PRIMARY KEY (id); + +ALTER TABLE ONLY incident_management_oncall_schedules + ADD CONSTRAINT incident_management_oncall_schedules_pkey PRIMARY KEY (id); + ALTER TABLE ONLY index_statuses ADD CONSTRAINT index_statuses_pkey PRIMARY KEY (id); @@ -19118,6 +19656,9 @@ ALTER TABLE ONLY internal_ids ALTER TABLE ONLY ip_restrictions ADD CONSTRAINT ip_restrictions_pkey PRIMARY KEY (id); +ALTER TABLE ONLY issuable_metric_images + ADD CONSTRAINT issuable_metric_images_pkey PRIMARY KEY (id); + ALTER TABLE ONLY issuable_severities ADD CONSTRAINT issuable_severities_pkey PRIMARY KEY (id); @@ -19214,6 +19755,9 @@ ALTER TABLE ONLY merge_request_blocks ALTER TABLE ONLY merge_request_cleanup_schedules ADD CONSTRAINT merge_request_cleanup_schedules_pkey PRIMARY KEY (merge_request_id); +ALTER TABLE ONLY merge_request_context_commit_diff_files + ADD CONSTRAINT merge_request_context_commit_diff_files_pkey PRIMARY KEY (merge_request_context_commit_id, relative_order); + ALTER TABLE ONLY merge_request_context_commits ADD CONSTRAINT merge_request_context_commits_pkey PRIMARY KEY (id); @@ -19265,6 +19809,9 @@ ALTER TABLE ONLY namespace_aggregation_schedules ALTER TABLE ONLY namespace_limits ADD CONSTRAINT namespace_limits_pkey PRIMARY KEY (namespace_id); +ALTER TABLE ONLY namespace_onboarding_actions + ADD CONSTRAINT namespace_onboarding_actions_pkey PRIMARY KEY (id); + ALTER TABLE ONLY namespace_root_storage_statistics ADD CONSTRAINT namespace_root_storage_statistics_pkey PRIMARY KEY (namespace_id); @@ -19715,6 +20262,9 @@ ALTER TABLE ONLY user_highest_roles ALTER TABLE ONLY user_interacted_projects ADD CONSTRAINT user_interacted_projects_pkey PRIMARY KEY (project_id, user_id); +ALTER TABLE ONLY user_permission_export_uploads + ADD CONSTRAINT user_permission_export_uploads_pkey PRIMARY KEY (id); + ALTER TABLE ONLY user_preferences ADD CONSTRAINT user_preferences_pkey PRIMARY KEY (id); @@ -19745,12 +20295,18 @@ ALTER TABLE ONLY vulnerabilities ALTER TABLE ONLY vulnerability_exports ADD CONSTRAINT vulnerability_exports_pkey PRIMARY KEY (id); +ALTER TABLE ONLY vulnerability_external_issue_links + ADD CONSTRAINT vulnerability_external_issue_links_pkey PRIMARY KEY (id); + ALTER TABLE ONLY vulnerability_feedback ADD CONSTRAINT vulnerability_feedback_pkey PRIMARY KEY (id); ALTER TABLE ONLY vulnerability_finding_links ADD CONSTRAINT vulnerability_finding_links_pkey PRIMARY KEY (id); +ALTER TABLE ONLY vulnerability_findings_remediations + ADD CONSTRAINT vulnerability_findings_remediations_pkey PRIMARY KEY (id); + ALTER TABLE ONLY vulnerability_historical_statistics ADD CONSTRAINT vulnerability_historical_statistics_pkey PRIMARY KEY (id); @@ -19769,6 +20325,9 @@ ALTER TABLE ONLY vulnerability_occurrence_pipelines ALTER TABLE ONLY vulnerability_occurrences ADD CONSTRAINT vulnerability_occurrences_pkey PRIMARY KEY (id); +ALTER TABLE ONLY vulnerability_remediations + ADD CONSTRAINT vulnerability_remediations_pkey PRIMARY KEY (id); + ALTER TABLE ONLY vulnerability_scanners ADD CONSTRAINT vulnerability_scanners_pkey PRIMARY KEY (id); @@ -19939,6 +20498,8 @@ CREATE INDEX active_billable_users ON users USING btree (id) WHERE (((state)::te CREATE INDEX analytics_index_audit_events_on_created_at_and_author_id ON audit_events USING btree (created_at, author_id); +CREATE INDEX analytics_index_audit_events_part_on_created_at_and_author_id ON ONLY audit_events_part_5fc467ac26 USING btree (created_at, author_id); + CREATE INDEX analytics_index_events_on_created_at_and_author_id ON events USING btree (created_at, author_id); CREATE INDEX analytics_repository_languages_on_project_id ON analytics_language_trend_repository_languages USING btree (project_id); @@ -19983,6 +20544,8 @@ CREATE INDEX finding_links_on_vulnerability_occurrence_id ON vulnerability_findi CREATE INDEX idx_audit_events_on_entity_id_desc_author_id_created_at ON audit_events USING btree (entity_id, entity_type, id DESC, author_id, created_at); +CREATE INDEX idx_audit_events_part_on_entity_id_desc_author_id_created_at ON ONLY audit_events_part_5fc467ac26 USING btree (entity_id, entity_type, id DESC, author_id, created_at); + CREATE INDEX idx_ci_pipelines_artifacts_locked ON ci_pipelines USING btree (ci_ref_id, id) WHERE (locked = 1); CREATE INDEX idx_container_exp_policies_on_project_id_next_run_at_enabled ON container_expiration_policies USING btree (project_id, next_run_at, enabled); @@ -20067,6 +20630,10 @@ CREATE INDEX idx_security_scans_on_scan_type ON security_scans USING btree (scan CREATE UNIQUE INDEX idx_serverless_domain_cluster_on_clusters_applications_knative ON serverless_domain_cluster USING btree (clusters_applications_knative_id); +CREATE UNIQUE INDEX idx_vulnerability_ext_issue_links_on_vulne_id_and_ext_issue ON vulnerability_external_issue_links USING btree (vulnerability_id, external_type, external_project_key, external_issue_key); + +CREATE UNIQUE INDEX idx_vulnerability_ext_issue_links_on_vulne_id_and_link_type ON vulnerability_external_issue_links USING btree (vulnerability_id, link_type) WHERE (link_type = 1); + CREATE UNIQUE INDEX idx_vulnerability_issue_links_on_vulnerability_id_and_issue_id ON vulnerability_issue_links USING btree (vulnerability_id, issue_id); CREATE UNIQUE INDEX idx_vulnerability_issue_links_on_vulnerability_id_and_link_type ON vulnerability_issue_links USING btree (vulnerability_id, link_type) WHERE (link_type = 2); @@ -20077,6 +20644,8 @@ CREATE INDEX index_alert_assignees_on_alert_id ON alert_management_alert_assigne CREATE UNIQUE INDEX index_alert_assignees_on_user_id_and_alert_id ON alert_management_alert_assignees USING btree (user_id, alert_id); +CREATE INDEX index_alert_management_alerts_on_domain ON alert_management_alerts USING btree (domain); + CREATE INDEX index_alert_management_alerts_on_environment_id ON alert_management_alerts USING btree (environment_id) WHERE (environment_id IS NOT NULL); CREATE INDEX index_alert_management_alerts_on_issue_id ON alert_management_alerts USING btree (issue_id); @@ -20177,6 +20746,8 @@ CREATE INDEX index_approval_rules_code_owners_rule_type ON approval_merge_reques CREATE INDEX index_approvals_on_merge_request_id ON approvals USING btree (merge_request_id); +CREATE INDEX index_approvals_on_merge_request_id_and_created_at ON approvals USING btree (merge_request_id, created_at); + CREATE UNIQUE INDEX index_approvals_on_user_id_and_merge_request_id ON approvals USING btree (user_id, merge_request_id); CREATE INDEX index_approver_groups_on_group_id ON approver_groups USING btree (group_id); @@ -20243,6 +20814,16 @@ CREATE INDEX index_board_user_preferences_on_user_id ON board_user_preferences U CREATE UNIQUE INDEX index_board_user_preferences_on_user_id_and_board_id ON board_user_preferences USING btree (user_id, board_id); +CREATE INDEX index_boards_epic_board_labels_on_epic_board_id ON boards_epic_board_labels USING btree (epic_board_id); + +CREATE INDEX index_boards_epic_board_labels_on_label_id ON boards_epic_board_labels USING btree (label_id); + +CREATE UNIQUE INDEX index_boards_epic_board_positions_on_epic_board_id_and_epic_id ON boards_epic_board_positions USING btree (epic_board_id, epic_id); + +CREATE INDEX index_boards_epic_board_positions_on_epic_id ON boards_epic_board_positions USING btree (epic_id); + +CREATE INDEX index_boards_epic_boards_on_group_id ON boards_epic_boards USING btree (group_id); + CREATE INDEX index_boards_epic_user_preferences_on_board_id ON boards_epic_user_preferences USING btree (board_id); CREATE UNIQUE INDEX index_boards_epic_user_preferences_on_board_user_epic_unique ON boards_epic_user_preferences USING btree (board_id, user_id, epic_id); @@ -20253,6 +20834,8 @@ CREATE INDEX index_boards_epic_user_preferences_on_user_id ON boards_epic_user_p CREATE INDEX index_boards_on_group_id ON boards USING btree (group_id); +CREATE INDEX index_boards_on_iteration_id ON boards USING btree (iteration_id); + CREATE INDEX index_boards_on_milestone_id ON boards USING btree (milestone_id); CREATE INDEX index_boards_on_project_id ON boards USING btree (project_id); @@ -20269,6 +20852,10 @@ CREATE INDEX index_bulk_import_entities_on_parent_id ON bulk_import_entities USI CREATE INDEX index_bulk_import_entities_on_project_id ON bulk_import_entities USING btree (project_id); +CREATE INDEX index_bulk_import_failures_on_bulk_import_entity_id ON bulk_import_failures USING btree (bulk_import_entity_id); + +CREATE INDEX index_bulk_import_failures_on_correlation_id_value ON bulk_import_failures USING btree (correlation_id_value); + CREATE INDEX index_bulk_imports_on_user_id ON bulk_imports USING btree (user_id); CREATE UNIQUE INDEX index_chat_names_on_service_id_and_team_id_and_chat_id ON chat_names USING btree (service_id, team_id, chat_id); @@ -20323,7 +20910,7 @@ CREATE INDEX index_ci_builds_on_protected ON ci_builds USING btree (protected); CREATE INDEX index_ci_builds_on_queued_at ON ci_builds USING btree (queued_at); -CREATE INDEX index_ci_builds_on_runner_id ON ci_builds USING btree (runner_id); +CREATE INDEX index_ci_builds_on_runner_id_and_id_desc ON ci_builds USING btree (runner_id, id DESC); CREATE INDEX index_ci_builds_on_stage_id ON ci_builds USING btree (stage_id); @@ -20405,7 +20992,7 @@ CREATE INDEX index_ci_pipelines_for_ondemand_dast_scans ON ci_pipelines USING bt CREATE INDEX index_ci_pipelines_on_auto_canceled_by_id ON ci_pipelines USING btree (auto_canceled_by_id); -CREATE INDEX index_ci_pipelines_on_ci_ref_id ON ci_pipelines USING btree (ci_ref_id) WHERE (ci_ref_id IS NOT NULL); +CREATE INDEX index_ci_pipelines_on_ci_ref_id_and_more ON ci_pipelines USING btree (ci_ref_id, id DESC, source, status) WHERE (ci_ref_id IS NOT NULL); CREATE INDEX index_ci_pipelines_on_external_pull_request_id ON ci_pipelines USING btree (external_pull_request_id) WHERE (external_pull_request_id IS NOT NULL); @@ -20413,8 +21000,6 @@ CREATE INDEX index_ci_pipelines_on_merge_request_id ON ci_pipelines USING btree CREATE INDEX index_ci_pipelines_on_pipeline_schedule_id ON ci_pipelines USING btree (pipeline_schedule_id); -CREATE INDEX index_ci_pipelines_on_project_id_and_created_at ON ci_pipelines USING btree (project_id, created_at); - CREATE INDEX index_ci_pipelines_on_project_id_and_id_desc ON ci_pipelines USING btree (project_id, id DESC); CREATE UNIQUE INDEX index_ci_pipelines_on_project_id_and_iid ON ci_pipelines USING btree (project_id, iid) WHERE (iid IS NOT NULL); @@ -20621,6 +21206,8 @@ CREATE INDEX index_dependency_proxy_blobs_on_group_id_and_file_name ON dependenc CREATE INDEX index_dependency_proxy_group_settings_on_group_id ON dependency_proxy_group_settings USING btree (group_id); +CREATE UNIQUE INDEX index_dependency_proxy_manifests_on_group_id_and_file_name ON dependency_proxy_manifests USING btree (group_id, file_name); + CREATE INDEX index_deploy_key_id_on_protected_branch_push_access_levels ON protected_branch_push_access_levels USING btree (deploy_key_id); CREATE INDEX index_deploy_keys_projects_on_deploy_key_id ON deploy_keys_projects USING btree (deploy_key_id); @@ -20647,12 +21234,14 @@ CREATE INDEX index_deployments_on_environment_id_and_id ON deployments USING btr CREATE INDEX index_deployments_on_environment_id_and_iid_and_project_id ON deployments USING btree (environment_id, iid, project_id); -CREATE INDEX index_deployments_on_environment_id_and_status ON deployments USING btree (environment_id, status); +CREATE INDEX index_deployments_on_environment_status_sha ON deployments USING btree (environment_id, status, sha); CREATE INDEX index_deployments_on_id_and_status_and_created_at ON deployments USING btree (id, status, created_at); CREATE INDEX index_deployments_on_id_where_cluster_id_present ON deployments USING btree (id) WHERE (cluster_id IS NOT NULL); +CREATE INDEX index_deployments_on_project_and_finished ON deployments USING btree (project_id, finished_at) WHERE (status = 2); + CREATE INDEX index_deployments_on_project_id_and_id ON deployments USING btree (project_id, id DESC); CREATE UNIQUE INDEX index_deployments_on_project_id_and_iid ON deployments USING btree (project_id, iid); @@ -20711,10 +21300,6 @@ CREATE INDEX index_elastic_reindexing_tasks_on_state ON elastic_reindexing_tasks CREATE INDEX index_elasticsearch_indexed_namespaces_on_created_at ON elasticsearch_indexed_namespaces USING btree (created_at); -CREATE UNIQUE INDEX index_elasticsearch_indexed_namespaces_on_namespace_id ON elasticsearch_indexed_namespaces USING btree (namespace_id); - -CREATE UNIQUE INDEX index_elasticsearch_indexed_projects_on_project_id ON elasticsearch_indexed_projects USING btree (project_id); - CREATE UNIQUE INDEX index_emails_on_confirmation_token ON emails USING btree (confirmation_token); CREATE UNIQUE INDEX index_emails_on_email ON emails USING btree (email); @@ -20799,6 +21384,14 @@ CREATE UNIQUE INDEX index_events_on_target_type_and_target_id_and_fingerprint ON CREATE INDEX index_evidences_on_release_id ON evidences USING btree (release_id); +CREATE INDEX index_experiment_subjects_on_experiment_id ON experiment_subjects USING btree (experiment_id); + +CREATE INDEX index_experiment_subjects_on_group_id ON experiment_subjects USING btree (group_id); + +CREATE INDEX index_experiment_subjects_on_project_id ON experiment_subjects USING btree (project_id); + +CREATE INDEX index_experiment_subjects_on_user_id ON experiment_subjects USING btree (user_id); + CREATE INDEX index_experiment_users_on_experiment_id ON experiment_users USING btree (experiment_id); CREATE INDEX index_experiment_users_on_user_id ON experiment_users USING btree (user_id); @@ -20971,6 +21564,8 @@ CREATE INDEX index_identities_on_saml_provider_id ON identities USING btree (sam CREATE INDEX index_identities_on_user_id ON identities USING btree (user_id); +CREATE UNIQUE INDEX index_im_oncall_schedules_on_project_id_and_iid ON incident_management_oncall_schedules USING btree (project_id, iid); + CREATE UNIQUE INDEX index_import_export_uploads_on_group_id ON import_export_uploads USING btree (group_id) WHERE (group_id IS NOT NULL); CREATE INDEX index_import_export_uploads_on_project_id ON import_export_uploads USING btree (project_id); @@ -20987,6 +21582,18 @@ CREATE INDEX index_import_failures_on_project_id_not_null ON import_failures USI CREATE INDEX index_imported_projects_on_import_type_creator_id_created_at ON projects USING btree (import_type, creator_id, created_at) WHERE (import_type IS NOT NULL); +CREATE INDEX index_inc_mgmnt_oncall_participants_on_oncall_rotation_id ON incident_management_oncall_participants USING btree (oncall_rotation_id); + +CREATE INDEX index_inc_mgmnt_oncall_participants_on_oncall_user_id ON incident_management_oncall_participants USING btree (user_id); + +CREATE UNIQUE INDEX index_inc_mgmnt_oncall_participants_on_user_id_and_rotation_id ON incident_management_oncall_participants USING btree (user_id, oncall_rotation_id); + +CREATE UNIQUE INDEX index_inc_mgmnt_oncall_rotations_on_oncall_schedule_id_and_id ON incident_management_oncall_rotations USING btree (oncall_schedule_id, id); + +CREATE UNIQUE INDEX index_inc_mgmnt_oncall_rotations_on_oncall_schedule_id_and_name ON incident_management_oncall_rotations USING btree (oncall_schedule_id, name); + +CREATE INDEX index_incident_management_oncall_schedules_on_project_id ON incident_management_oncall_schedules USING btree (project_id); + CREATE UNIQUE INDEX index_index_statuses_on_project_id ON index_statuses USING btree (project_id); CREATE INDEX index_insights_on_namespace_id ON insights USING btree (namespace_id); @@ -21003,6 +21610,8 @@ CREATE UNIQUE INDEX index_internal_ids_on_usage_and_project_id ON internal_ids U CREATE INDEX index_ip_restrictions_on_group_id ON ip_restrictions USING btree (group_id); +CREATE INDEX index_issuable_metric_images_on_issue_id ON issuable_metric_images USING btree (issue_id); + CREATE UNIQUE INDEX index_issuable_severities_on_issue_id ON issuable_severities USING btree (issue_id); CREATE UNIQUE INDEX index_issuable_slas_on_issue_id ON issuable_slas USING btree (issue_id); @@ -21101,7 +21710,7 @@ CREATE UNIQUE INDEX index_label_priorities_on_project_id_and_label_id ON label_p CREATE UNIQUE INDEX index_labels_on_group_id_and_project_id_and_title ON labels USING btree (group_id, project_id, title); -CREATE INDEX index_labels_on_group_id_and_title ON labels USING btree (group_id, title) WHERE (project_id = NULL::integer); +CREATE INDEX index_labels_on_group_id_and_title_with_null_project_id ON labels USING btree (group_id, title) WHERE (project_id IS NULL); CREATE INDEX index_labels_on_project_id ON labels USING btree (project_id); @@ -21133,6 +21742,8 @@ CREATE UNIQUE INDEX index_list_user_preferences_on_user_id_and_list_id ON list_u CREATE UNIQUE INDEX index_lists_on_board_id_and_label_id ON lists USING btree (board_id, label_id); +CREATE INDEX index_lists_on_iteration_id ON lists USING btree (iteration_id); + CREATE INDEX index_lists_on_label_id ON lists USING btree (label_id); CREATE INDEX index_lists_on_list_type ON lists USING btree (list_type); @@ -21285,8 +21896,12 @@ CREATE UNIQUE INDEX index_mr_context_commits_on_merge_request_id_and_sha ON merg CREATE INDEX index_mr_metrics_on_target_project_id_merged_at_nulls_last ON merge_request_metrics USING btree (target_project_id, merged_at DESC NULLS LAST, id DESC); +CREATE INDEX index_mr_metrics_on_target_project_id_merged_at_time_to_merge ON merge_request_metrics USING btree (target_project_id, merged_at, created_at) WHERE (merged_at > created_at); + CREATE UNIQUE INDEX index_namespace_aggregation_schedules_on_namespace_id ON namespace_aggregation_schedules USING btree (namespace_id); +CREATE INDEX index_namespace_onboarding_actions_on_namespace_id ON namespace_onboarding_actions USING btree (namespace_id); + CREATE UNIQUE INDEX index_namespace_root_storage_statistics_on_namespace_id ON namespace_root_storage_statistics USING btree (namespace_id); CREATE UNIQUE INDEX index_namespace_statistics_on_namespace_id ON namespace_statistics USING btree (namespace_id); @@ -21341,7 +21956,7 @@ CREATE INDEX index_notes_on_line_code ON notes USING btree (line_code); CREATE INDEX index_notes_on_note_trigram ON notes USING gin (note gin_trgm_ops); -CREATE INDEX index_notes_on_noteable_id_and_noteable_type ON notes USING btree (noteable_id, noteable_type); +CREATE INDEX index_notes_on_noteable_id_and_noteable_type_and_system ON notes USING btree (noteable_id, noteable_type, system); CREATE INDEX index_notes_on_project_id_and_id_and_system_false ON notes USING btree (project_id, id) WHERE (NOT system); @@ -21397,6 +22012,8 @@ CREATE UNIQUE INDEX index_on_segment_selections_project_id_segment_id ON analyti CREATE INDEX index_on_segment_selections_segment_id ON analytics_devops_adoption_segment_selections USING btree (segment_id); +CREATE INDEX index_on_snapshots_segment_id_recorded_at ON analytics_devops_adoption_snapshots USING btree (segment_id, recorded_at); + CREATE INDEX index_on_users_lower_email ON users USING btree (lower((email)::text)); CREATE INDEX index_on_users_lower_username ON users USING btree (lower((username)::text)); @@ -21453,6 +22070,8 @@ CREATE INDEX index_packages_package_files_on_file_store ON packages_package_file CREATE INDEX index_packages_package_files_on_package_id_and_file_name ON packages_package_files USING btree (package_id, file_name); +CREATE INDEX index_packages_package_files_on_verification_state ON packages_package_files USING btree (verification_state); + CREATE INDEX index_packages_packages_on_creator_id ON packages_packages USING btree (creator_id); CREATE INDEX index_packages_packages_on_id_and_created_at ON packages_packages USING btree (id, created_at); @@ -21603,6 +22222,8 @@ CREATE UNIQUE INDEX index_project_repositories_on_project_id ON project_reposito CREATE INDEX index_project_repositories_on_shard_id ON project_repositories USING btree (shard_id); +CREATE INDEX index_project_repositories_on_shard_id_and_project_id ON project_repositories USING btree (shard_id, project_id); + CREATE UNIQUE INDEX index_project_repository_states_on_project_id ON project_repository_states USING btree (project_id); CREATE INDEX index_project_repository_storage_moves_on_project_id ON project_repository_storage_moves USING btree (project_id); @@ -21613,6 +22234,8 @@ CREATE UNIQUE INDEX index_project_settings_on_push_rule_id ON project_settings U CREATE INDEX index_project_statistics_on_namespace_id ON project_statistics USING btree (namespace_id); +CREATE INDEX index_project_statistics_on_packages_size_and_project_id ON project_statistics USING btree (packages_size, project_id); + CREATE UNIQUE INDEX index_project_statistics_on_project_id ON project_statistics USING btree (project_id); CREATE INDEX index_project_statistics_on_repository_size_and_project_id ON project_statistics USING btree (repository_size, project_id); @@ -21657,6 +22280,8 @@ CREATE INDEX index_projects_on_creator_id_and_created_at_and_id ON projects USIN CREATE INDEX index_projects_on_creator_id_and_id ON projects USING btree (creator_id, id); +CREATE INDEX index_projects_on_creator_id_import_type_and_created_at_partial ON projects USING btree (creator_id, import_type, created_at) WHERE (import_type IS NOT NULL); + CREATE INDEX index_projects_on_description_trigram ON projects USING gin (description gin_trgm_ops); CREATE INDEX index_projects_on_id_and_archived_and_pending_delete ON projects USING btree (id) WHERE ((archived = false) AND (pending_delete = false)); @@ -21789,6 +22414,8 @@ CREATE INDEX index_releases_on_author_id ON releases USING btree (author_id); CREATE INDEX index_releases_on_project_id_and_tag ON releases USING btree (project_id, tag); +CREATE INDEX index_releases_on_released_at ON releases USING btree (released_at); + CREATE INDEX index_remote_mirrors_on_last_successful_update_at ON remote_mirrors USING btree (last_successful_update_at); CREATE INDEX index_remote_mirrors_on_project_id ON remote_mirrors USING btree (project_id); @@ -21891,7 +22518,7 @@ CREATE UNIQUE INDEX index_scim_identities_on_user_id_and_group_id ON scim_identi CREATE UNIQUE INDEX index_scim_oauth_access_tokens_on_group_id_and_token_encrypted ON scim_oauth_access_tokens USING btree (group_id, token_encrypted); -CREATE INDEX index_secure_ci_builds_on_user_id_created_at_parser_features ON ci_builds USING btree (user_id, created_at) WHERE (((type)::text = 'Ci::Build'::text) AND ((name)::text = ANY (ARRAY[('container_scanning'::character varying)::text, ('dast'::character varying)::text, ('dependency_scanning'::character varying)::text, ('license_management'::character varying)::text, ('license_scanning'::character varying)::text, ('sast'::character varying)::text, ('coverage_fuzzing'::character varying)::text, ('secret_detection'::character varying)::text]))); +CREATE INDEX index_secure_ci_builds_on_user_id_name_created_at ON ci_builds USING btree (user_id, name, created_at) WHERE (((type)::text = 'Ci::Build'::text) AND ((name)::text = ANY (ARRAY[('container_scanning'::character varying)::text, ('dast'::character varying)::text, ('dependency_scanning'::character varying)::text, ('license_management'::character varying)::text, ('license_scanning'::character varying)::text, ('sast'::character varying)::text, ('coverage_fuzzing'::character varying)::text, ('apifuzzer_fuzz'::character varying)::text, ('apifuzzer_fuzz_dnd'::character varying)::text, ('secret_detection'::character varying)::text]))); CREATE INDEX index_security_ci_builds_on_name_and_id_parser_features ON ci_builds USING btree (name, id) WHERE (((name)::text = ANY (ARRAY[('container_scanning'::character varying)::text, ('dast'::character varying)::text, ('dependency_scanning'::character varying)::text, ('license_management'::character varying)::text, ('sast'::character varying)::text, ('secret_detection'::character varying)::text, ('coverage_fuzzing'::character varying)::text, ('license_scanning'::character varying)::text])) AND ((type)::text = 'Ci::Build'::text)); @@ -21907,6 +22534,8 @@ CREATE INDEX index_security_findings_on_scanner_id ON security_findings USING bt CREATE INDEX index_security_findings_on_severity ON security_findings USING btree (severity); +CREATE UNIQUE INDEX index_security_findings_on_uuid_and_scan_id ON security_findings USING btree (uuid, scan_id); + CREATE INDEX index_self_managed_prometheus_alert_events_on_environment_id ON self_managed_prometheus_alert_events USING btree (environment_id); CREATE INDEX index_sent_notifications_on_noteable_type_noteable_id ON sent_notifications USING btree (noteable_id) WHERE ((noteable_type)::text = 'Issue'::text); @@ -21949,6 +22578,8 @@ CREATE UNIQUE INDEX index_smartcard_identities_on_subject_and_issuer ON smartcar CREATE INDEX index_smartcard_identities_on_user_id ON smartcard_identities USING btree (user_id); +CREATE INDEX index_snippet_on_id_and_project_id ON snippets USING btree (id, project_id); + CREATE UNIQUE INDEX index_snippet_repositories_on_disk_path ON snippet_repositories USING btree (disk_path); CREATE INDEX index_snippet_repositories_on_shard_id ON snippet_repositories USING btree (shard_id); @@ -22109,12 +22740,16 @@ CREATE INDEX index_user_custom_attributes_on_key_and_value ON user_custom_attrib CREATE UNIQUE INDEX index_user_custom_attributes_on_user_id_and_key ON user_custom_attributes USING btree (user_id, key); +CREATE INDEX index_user_details_on_provisioned_by_group_id ON user_details USING btree (provisioned_by_group_id); + CREATE UNIQUE INDEX index_user_details_on_user_id ON user_details USING btree (user_id); CREATE INDEX index_user_highest_roles_on_user_id_and_highest_access_level ON user_highest_roles USING btree (user_id, highest_access_level); CREATE INDEX index_user_interacted_projects_on_user_id ON user_interacted_projects USING btree (user_id); +CREATE INDEX index_user_permission_export_uploads_on_user_id_and_status ON user_permission_export_uploads USING btree (user_id, status); + CREATE INDEX index_user_preferences_on_gitpod_enabled ON user_preferences USING btree (gitpod_enabled); CREATE UNIQUE INDEX index_user_preferences_on_user_id ON user_preferences USING btree (user_id); @@ -22149,6 +22784,8 @@ CREATE INDEX index_users_on_name_trigram ON users USING gin (name gin_trgm_ops); CREATE INDEX index_users_on_public_email ON users USING btree (public_email) WHERE ((public_email)::text <> ''::text); +CREATE INDEX index_users_on_require_two_factor_authentication_from_group ON users USING btree (require_two_factor_authentication_from_group) WHERE (require_two_factor_authentication_from_group = true); + CREATE UNIQUE INDEX index_users_on_reset_password_token ON users USING btree (reset_password_token); CREATE INDEX index_users_on_state ON users USING btree (state); @@ -22193,7 +22830,7 @@ CREATE INDEX index_vulnerabilities_on_last_edited_by_id ON vulnerabilities USING CREATE INDEX index_vulnerabilities_on_milestone_id ON vulnerabilities USING btree (milestone_id); -CREATE INDEX index_vulnerabilities_on_project_id ON vulnerabilities USING btree (project_id); +CREATE INDEX index_vulnerabilities_on_project_id_and_state_and_severity ON vulnerabilities USING btree (project_id, state, severity); CREATE INDEX index_vulnerabilities_on_resolved_by_id ON vulnerabilities USING btree (resolved_by_id); @@ -22213,6 +22850,10 @@ CREATE INDEX index_vulnerability_exports_on_group_id_not_null ON vulnerability_e CREATE INDEX index_vulnerability_exports_on_project_id_not_null ON vulnerability_exports USING btree (project_id) WHERE (project_id IS NOT NULL); +CREATE INDEX index_vulnerability_external_issue_links_on_author_id ON vulnerability_external_issue_links USING btree (author_id); + +CREATE INDEX index_vulnerability_external_issue_links_on_vulnerability_id ON vulnerability_external_issue_links USING btree (vulnerability_id); + CREATE INDEX index_vulnerability_feedback_on_author_id ON vulnerability_feedback USING btree (author_id); CREATE INDEX index_vulnerability_feedback_on_comment_author_id ON vulnerability_feedback USING btree (comment_author_id); @@ -22225,6 +22866,10 @@ CREATE INDEX index_vulnerability_feedback_on_merge_request_id ON vulnerability_f CREATE INDEX index_vulnerability_feedback_on_pipeline_id ON vulnerability_feedback USING btree (pipeline_id); +CREATE INDEX index_vulnerability_findings_remediations_on_remediation_id ON vulnerability_findings_remediations USING btree (vulnerability_remediation_id); + +CREATE UNIQUE INDEX index_vulnerability_findings_remediations_on_unique_keys ON vulnerability_findings_remediations USING btree (vulnerability_occurrence_id, vulnerability_remediation_id); + CREATE INDEX index_vulnerability_historical_statistics_on_date_and_id ON vulnerability_historical_statistics USING btree (date, id); CREATE UNIQUE INDEX index_vulnerability_identifiers_on_project_id_and_fingerprint ON vulnerability_identifiers USING btree (project_id, fingerprint); @@ -22251,6 +22896,8 @@ CREATE UNIQUE INDEX index_vulnerability_occurrences_on_uuid ON vulnerability_occ CREATE INDEX index_vulnerability_occurrences_on_vulnerability_id ON vulnerability_occurrences USING btree (vulnerability_id); +CREATE UNIQUE INDEX index_vulnerability_remediations_on_project_id_and_checksum ON vulnerability_remediations USING btree (project_id, checksum); + CREATE UNIQUE INDEX index_vulnerability_scanners_on_project_id_and_external_id ON vulnerability_scanners USING btree (project_id, external_id); CREATE INDEX index_vulnerability_statistics_on_letter_grade ON vulnerability_statistics USING btree (letter_grade); @@ -22271,6 +22918,8 @@ CREATE INDEX index_web_hooks_on_group_id ON web_hooks USING btree (group_id) WHE CREATE INDEX index_web_hooks_on_project_id ON web_hooks USING btree (project_id); +CREATE INDEX index_web_hooks_on_service_id ON web_hooks USING btree (service_id); + CREATE INDEX index_web_hooks_on_type ON web_hooks USING btree (type); CREATE UNIQUE INDEX index_webauthn_registrations_on_credential_xid ON webauthn_registrations USING btree (credential_xid); @@ -22329,9 +22978,11 @@ CREATE UNIQUE INDEX one_canonical_wiki_page_slug_per_metadata ON wiki_page_slugs CREATE INDEX package_name_index ON packages_packages USING btree (name); -CREATE INDEX packages_packages_verification_checksum_partial ON packages_package_files USING btree (verification_checksum) WHERE (verification_checksum IS NOT NULL); +CREATE INDEX packages_packages_failed_verification ON packages_package_files USING btree (verification_retry_at NULLS FIRST) WHERE (verification_state = 3); + +CREATE INDEX packages_packages_needs_verification ON packages_package_files USING btree (verification_state) WHERE ((verification_state = 0) OR (verification_state = 3)); -CREATE INDEX packages_packages_verification_failure_partial ON packages_package_files USING btree (verification_failure) WHERE (verification_failure IS NOT NULL); +CREATE INDEX packages_packages_pending_verification ON packages_package_files USING btree (verified_at NULLS FIRST) WHERE (verification_state = 0); CREATE INDEX partial_index_ci_builds_on_scheduled_at_with_scheduled_jobs ON ci_builds USING btree (scheduled_at) WHERE ((scheduled_at IS NOT NULL) AND ((type)::text = 'Ci::Build'::text) AND ((status)::text = 'scheduled'::text)); @@ -22339,10 +22990,6 @@ CREATE INDEX partial_index_deployments_for_legacy_successful_deployments ON depl CREATE INDEX partial_index_deployments_for_project_id_and_tag ON deployments USING btree (project_id) WHERE (tag IS TRUE); -CREATE INDEX snippet_repositories_verification_checksum_partial ON snippet_repositories USING btree (verification_checksum) WHERE (verification_checksum IS NOT NULL); - -CREATE INDEX snippet_repositories_verification_failure_partial ON snippet_repositories USING btree (verification_failure) WHERE (verification_failure IS NOT NULL); - CREATE UNIQUE INDEX snippet_user_mentions_on_snippet_id_and_note_id_index ON snippet_user_mentions USING btree (snippet_id, note_id); CREATE UNIQUE INDEX snippet_user_mentions_on_snippet_id_index ON snippet_user_mentions USING btree (snippet_id) WHERE (note_id IS NULL); @@ -22353,20 +23000,12 @@ CREATE INDEX temporary_index_vulnerabilities_on_id ON vulnerabilities USING btre CREATE UNIQUE INDEX term_agreements_unique_index ON term_agreements USING btree (user_id, term_id); -CREATE INDEX terraform_state_versions_verification_checksum_partial ON terraform_state_versions USING btree (verification_checksum) WHERE (verification_checksum IS NOT NULL); - -CREATE INDEX terraform_state_versions_verification_failure_partial ON terraform_state_versions USING btree (verification_failure) WHERE (verification_failure IS NOT NULL); - CREATE INDEX tmp_build_stage_position_index ON ci_builds USING btree (stage_id, stage_idx) WHERE (stage_idx IS NOT NULL); -CREATE INDEX tmp_idx_blocked_by_type_links ON issue_links USING btree (target_id) WHERE (link_type = 2); - -CREATE INDEX tmp_idx_blocking_type_links ON issue_links USING btree (source_id) WHERE (link_type = 1); - -CREATE INDEX tmp_idx_index_issues_with_outdate_blocking_count ON issues USING btree (id) WHERE ((state_id = 1) AND (blocking_issues_count = 0)); - CREATE INDEX tmp_index_for_email_unconfirmation_migration ON emails USING btree (id) WHERE (confirmed_at IS NOT NULL); +CREATE INDEX tmp_index_on_vulnerabilities_non_dismissed ON vulnerabilities USING btree (id) WHERE (state <> 2); + CREATE UNIQUE INDEX unique_merge_request_metrics_by_merge_request_id ON merge_request_metrics USING btree (merge_request_id); CREATE UNIQUE INDEX vulnerability_feedback_unique_idx ON vulnerability_feedback USING btree (project_id, category, feedback_type, project_fingerprint); @@ -22700,6 +23339,9 @@ ALTER TABLE ONLY project_features ALTER TABLE ONLY ci_pipelines ADD CONSTRAINT fk_190998ef09 FOREIGN KEY (external_pull_request_id) REFERENCES external_pull_requests(id) ON DELETE SET NULL; +ALTER TABLE ONLY user_details + ADD CONSTRAINT fk_190e4fcc88 FOREIGN KEY (provisioned_by_group_id) REFERENCES namespaces(id) ON DELETE SET NULL; + ALTER TABLE ONLY vulnerabilities ADD CONSTRAINT fk_1d37cddf91 FOREIGN KEY (epic_id) REFERENCES epics(id) ON DELETE SET NULL; @@ -22754,6 +23396,9 @@ ALTER TABLE ONLY notes ALTER TABLE ONLY members ADD CONSTRAINT fk_2e88fb7ce9 FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE; +ALTER TABLE ONLY lists + ADD CONSTRAINT fk_30f2a831f4 FOREIGN KEY (iteration_id) REFERENCES sprints(id) ON DELETE CASCADE; + ALTER TABLE ONLY approvals ADD CONSTRAINT fk_310d714958 FOREIGN KEY (merge_request_id) REFERENCES merge_requests(id) ON DELETE CASCADE; @@ -22940,9 +23585,6 @@ ALTER TABLE ONLY merge_request_diffs ALTER TABLE ONLY ci_pipelines ADD CONSTRAINT fk_86635dbd80 FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; -ALTER TABLE ONLY services - ADD CONSTRAINT fk_868a8e7ad6 FOREIGN KEY (inherit_from_id) REFERENCES services(id) ON DELETE SET NULL; - ALTER TABLE ONLY geo_event_log ADD CONSTRAINT fk_86c84214ec FOREIGN KEY (repository_renamed_event_id) REFERENCES geo_repository_renamed_events(id) ON DELETE CASCADE; @@ -22952,6 +23594,9 @@ ALTER TABLE ONLY packages_package_files ALTER TABLE ONLY ci_builds ADD CONSTRAINT fk_87f4cefcda FOREIGN KEY (upstream_pipeline_id) REFERENCES ci_pipelines(id) ON DELETE CASCADE; +ALTER TABLE ONLY experiment_subjects + ADD CONSTRAINT fk_88489af1b1 FOREIGN KEY (group_id) REFERENCES namespaces(id) ON DELETE CASCADE; + ALTER TABLE ONLY vulnerabilities ADD CONSTRAINT fk_88b4d546ef FOREIGN KEY (start_date_sourcing_milestone_id) REFERENCES milestones(id) ON DELETE SET NULL; @@ -23138,6 +23783,9 @@ ALTER TABLE ONLY issues ALTER TABLE ONLY issue_links ADD CONSTRAINT fk_c900194ff2 FOREIGN KEY (source_id) REFERENCES issues(id) ON DELETE CASCADE; +ALTER TABLE ONLY experiment_subjects + ADD CONSTRAINT fk_ccc28f8ceb FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; + ALTER TABLE ONLY todos ADD CONSTRAINT fk_ccf0373936 FOREIGN KEY (author_id) REFERENCES users(id) ON DELETE CASCADE; @@ -23156,6 +23804,9 @@ ALTER TABLE ONLY environments ALTER TABLE ONLY ci_builds ADD CONSTRAINT fk_d3130c9a7f FOREIGN KEY (commit_id) REFERENCES ci_pipelines(id) ON DELETE CASCADE; +ALTER TABLE ONLY web_hooks + ADD CONSTRAINT fk_d47999a98a FOREIGN KEY (service_id) REFERENCES services(id) ON DELETE CASCADE NOT VALID; + ALTER TABLE ONLY ci_sources_pipelines ADD CONSTRAINT fk_d4e29af7d7 FOREIGN KEY (source_pipeline_id) REFERENCES ci_pipelines(id) ON DELETE CASCADE; @@ -23195,6 +23846,9 @@ ALTER TABLE ONLY analytics_devops_adoption_segment_selections ALTER TABLE ONLY issues ADD CONSTRAINT fk_df75a7c8b8 FOREIGN KEY (promoted_to_epic_id) REFERENCES epics(id) ON DELETE SET NULL; +ALTER TABLE ONLY experiment_subjects + ADD CONSTRAINT fk_dfc3e211d4 FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE; + ALTER TABLE ONLY ci_resources ADD CONSTRAINT fk_e169a8e3d5 FOREIGN KEY (build_id) REFERENCES ci_builds(id) ON DELETE SET NULL; @@ -23252,6 +23906,9 @@ ALTER TABLE ONLY emails ALTER TABLE ONLY clusters ADD CONSTRAINT fk_f05c5e5a42 FOREIGN KEY (management_project_id) REFERENCES projects(id) ON DELETE SET NULL; +ALTER TABLE ONLY vulnerability_external_issue_links + ADD CONSTRAINT fk_f07bb8233d FOREIGN KEY (vulnerability_id) REFERENCES vulnerabilities(id) ON DELETE CASCADE; + ALTER TABLE ONLY epics ADD CONSTRAINT fk_f081aa4489 FOREIGN KEY (group_id) REFERENCES namespaces(id) ON DELETE CASCADE; @@ -23276,6 +23933,9 @@ ALTER TABLE ONLY ci_stages ALTER TABLE ONLY system_note_metadata ADD CONSTRAINT fk_fbd87415c9 FOREIGN KEY (description_version_id) REFERENCES description_versions(id) ON DELETE SET NULL; +ALTER TABLE ONLY vulnerability_remediations + ADD CONSTRAINT fk_fc61a535a0 FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; + ALTER TABLE ONLY merge_requests ADD CONSTRAINT fk_fd82eae0b9 FOREIGN KEY (head_pipeline_id) REFERENCES ci_pipelines(id) ON DELETE SET NULL; @@ -23318,6 +23978,9 @@ ALTER TABLE ONLY namespace_statistics ALTER TABLE ONLY clusters_applications_elastic_stacks ADD CONSTRAINT fk_rails_026f219f46 FOREIGN KEY (cluster_id) REFERENCES clusters(id) ON DELETE CASCADE; +ALTER TABLE ONLY incident_management_oncall_participants + ADD CONSTRAINT fk_rails_032b12996a FOREIGN KEY (oncall_rotation_id) REFERENCES incident_management_oncall_rotations(id) ON DELETE CASCADE; + ALTER TABLE ONLY events ADD CONSTRAINT fk_rails_0434b48643 FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; @@ -23432,6 +24095,9 @@ ALTER TABLE ONLY cluster_providers_aws ALTER TABLE ONLY grafana_integrations ADD CONSTRAINT fk_rails_18d0e2b564 FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; +ALTER TABLE ONLY bulk_import_failures + ADD CONSTRAINT fk_rails_1964240b8c FOREIGN KEY (bulk_import_entity_id) REFERENCES bulk_import_entities(id) ON DELETE CASCADE; + ALTER TABLE ONLY group_wiki_repositories ADD CONSTRAINT fk_rails_19755e374b FOREIGN KEY (shard_id) REFERENCES shards(id) ON DELETE RESTRICT; @@ -23441,6 +24107,9 @@ ALTER TABLE ONLY open_project_tracker_data ALTER TABLE ONLY gpg_signatures ADD CONSTRAINT fk_rails_19d4f1c6f9 FOREIGN KEY (gpg_key_subkey_id) REFERENCES gpg_key_subkeys(id) ON DELETE SET NULL; +ALTER TABLE ONLY incident_management_oncall_schedules + ADD CONSTRAINT fk_rails_19e83fdd65 FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; + ALTER TABLE ONLY vulnerability_user_mentions ADD CONSTRAINT fk_rails_1a41c485cd FOREIGN KEY (vulnerability_id) REFERENCES vulnerabilities(id) ON DELETE CASCADE; @@ -23459,6 +24128,9 @@ ALTER TABLE ONLY approver_groups ALTER TABLE ONLY packages_tags ADD CONSTRAINT fk_rails_1dfc868911 FOREIGN KEY (package_id) REFERENCES packages_packages(id) ON DELETE CASCADE; +ALTER TABLE ONLY boards_epic_board_positions + ADD CONSTRAINT fk_rails_1ecfd9f2de FOREIGN KEY (epic_id) REFERENCES epics(id) ON DELETE CASCADE; + ALTER TABLE ONLY geo_repository_created_events ADD CONSTRAINT fk_rails_1f49e46a61 FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; @@ -23486,6 +24158,12 @@ ALTER TABLE ONLY saml_group_links ALTER TABLE ONLY group_custom_attributes ADD CONSTRAINT fk_rails_246e0db83a FOREIGN KEY (group_id) REFERENCES namespaces(id) ON DELETE CASCADE; +ALTER TABLE ONLY incident_management_oncall_rotations + ADD CONSTRAINT fk_rails_256e0bc604 FOREIGN KEY (oncall_schedule_id) REFERENCES incident_management_oncall_schedules(id) ON DELETE CASCADE; + +ALTER TABLE ONLY analytics_devops_adoption_snapshots + ADD CONSTRAINT fk_rails_25da9a92c0 FOREIGN KEY (segment_id) REFERENCES analytics_devops_adoption_segments(id) ON DELETE CASCADE; + ALTER TABLE ONLY cluster_agents ADD CONSTRAINT fk_rails_25e9fc2d5d FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; @@ -23504,6 +24182,9 @@ ALTER TABLE ONLY project_alerting_settings ALTER TABLE ONLY dast_site_validations ADD CONSTRAINT fk_rails_285c617324 FOREIGN KEY (dast_site_token_id) REFERENCES dast_site_tokens(id) ON DELETE CASCADE; +ALTER TABLE ONLY vulnerability_findings_remediations + ADD CONSTRAINT fk_rails_28a8d0cf93 FOREIGN KEY (vulnerability_occurrence_id) REFERENCES vulnerability_occurrences(id) ON DELETE CASCADE; + ALTER TABLE ONLY resource_state_events ADD CONSTRAINT fk_rails_29af06892a FOREIGN KEY (issue_id) REFERENCES issues(id) ON DELETE CASCADE; @@ -23519,6 +24200,9 @@ ALTER TABLE ONLY group_group_links ALTER TABLE ONLY geo_repository_updated_events ADD CONSTRAINT fk_rails_2b70854c08 FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; +ALTER TABLE ONLY boards_epic_board_labels + ADD CONSTRAINT fk_rails_2bedeb8799 FOREIGN KEY (label_id) REFERENCES labels(id) ON DELETE CASCADE; + ALTER TABLE ONLY protected_branch_unprotect_access_levels ADD CONSTRAINT fk_rails_2d2aba21ef FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE; @@ -23654,6 +24338,9 @@ ALTER TABLE ONLY merge_request_assignees ALTER TABLE ONLY packages_dependency_links ADD CONSTRAINT fk_rails_4437bf4070 FOREIGN KEY (dependency_id) REFERENCES packages_dependencies(id) ON DELETE CASCADE; +ALTER TABLE ONLY namespace_onboarding_actions + ADD CONSTRAINT fk_rails_4504f6875a FOREIGN KEY (namespace_id) REFERENCES namespaces(id) ON DELETE CASCADE; + ALTER TABLE ONLY project_auto_devops ADD CONSTRAINT fk_rails_45436b12b2 FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; @@ -23744,6 +24431,9 @@ ALTER TABLE ONLY clusters_applications_knative ALTER TABLE ONLY terraform_states ADD CONSTRAINT fk_rails_558901b030 FOREIGN KEY (locked_by_user_id) REFERENCES users(id); +ALTER TABLE ONLY issuable_metric_images + ADD CONSTRAINT fk_rails_56417a5a7f FOREIGN KEY (issue_id) REFERENCES issues(id) ON DELETE CASCADE; + ALTER TABLE ONLY group_deploy_keys ADD CONSTRAINT fk_rails_5682fc07f8 FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE RESTRICT; @@ -23801,6 +24491,9 @@ ALTER TABLE ONLY resource_weight_events ALTER TABLE ONLY approval_project_rules ADD CONSTRAINT fk_rails_5fb4dd100b FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; +ALTER TABLE ONLY incident_management_oncall_participants + ADD CONSTRAINT fk_rails_5fe86ea341 FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE; + ALTER TABLE ONLY user_highest_roles ADD CONSTRAINT fk_rails_60f6c325a6 FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE; @@ -23864,6 +24557,9 @@ ALTER TABLE ONLY web_hook_logs ALTER TABLE ONLY jira_imports ADD CONSTRAINT fk_rails_675d38c03b FOREIGN KEY (label_id) REFERENCES labels(id) ON DELETE SET NULL; +ALTER TABLE ONLY vulnerability_findings_remediations + ADD CONSTRAINT fk_rails_681c85ae0f FOREIGN KEY (vulnerability_remediation_id) REFERENCES vulnerability_remediations(id) ON DELETE CASCADE; + ALTER TABLE ONLY resource_iteration_events ADD CONSTRAINT fk_rails_6830c13ac1 FOREIGN KEY (merge_request_id) REFERENCES merge_requests(id) ON DELETE CASCADE; @@ -23915,6 +24611,9 @@ ALTER TABLE ONLY slack_integrations ALTER TABLE ONLY custom_emoji ADD CONSTRAINT fk_rails_745925b412 FOREIGN KEY (namespace_id) REFERENCES namespaces(id) ON DELETE CASCADE; +ALTER TABLE ONLY boards_epic_board_labels + ADD CONSTRAINT fk_rails_7471128a8e FOREIGN KEY (epic_board_id) REFERENCES boards_epic_boards(id) ON DELETE CASCADE; + ALTER TABLE ONLY dast_site_profiles ADD CONSTRAINT fk_rails_747dc64abc FOREIGN KEY (dast_site_id) REFERENCES dast_sites(id) ON DELETE CASCADE; @@ -23999,6 +24698,9 @@ ALTER TABLE ONLY clusters_applications_crossplane ALTER TABLE ONLY packages_package_file_build_infos ADD CONSTRAINT fk_rails_871ca3ae21 FOREIGN KEY (package_file_id) REFERENCES packages_package_files(id) ON DELETE CASCADE; +ALTER TABLE ONLY boards_epic_boards + ADD CONSTRAINT fk_rails_874c573878 FOREIGN KEY (group_id) REFERENCES namespaces(id) ON DELETE CASCADE; + ALTER TABLE ONLY ci_runner_namespaces ADD CONSTRAINT fk_rails_8767676b7a FOREIGN KEY (runner_id) REFERENCES ci_runners(id) ON DELETE CASCADE; @@ -24167,9 +24869,15 @@ ALTER TABLE ONLY user_preferences ALTER TABLE ONLY sentry_issues ADD CONSTRAINT fk_rails_a6a9612965 FOREIGN KEY (issue_id) REFERENCES issues(id) ON DELETE CASCADE; +ALTER TABLE ONLY user_permission_export_uploads + ADD CONSTRAINT fk_rails_a7130085e3 FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE; + ALTER TABLE ONLY repository_languages ADD CONSTRAINT fk_rails_a750ec87a8 FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; +ALTER TABLE ONLY dependency_proxy_manifests + ADD CONSTRAINT fk_rails_a758021fb0 FOREIGN KEY (group_id) REFERENCES namespaces(id) ON DELETE CASCADE; + ALTER TABLE ONLY resource_milestone_events ADD CONSTRAINT fk_rails_a788026e85 FOREIGN KEY (issue_id) REFERENCES issues(id) ON DELETE CASCADE; @@ -24356,6 +25064,9 @@ ALTER TABLE ONLY gpg_signatures ALTER TABLE ONLY board_group_recent_visits ADD CONSTRAINT fk_rails_ca04c38720 FOREIGN KEY (board_id) REFERENCES boards(id) ON DELETE CASCADE; +ALTER TABLE ONLY boards_epic_board_positions + ADD CONSTRAINT fk_rails_cb4563dd6e FOREIGN KEY (epic_board_id) REFERENCES boards_epic_boards(id) ON DELETE CASCADE; + ALTER TABLE ONLY vulnerability_finding_links ADD CONSTRAINT fk_rails_cbdfde27ce FOREIGN KEY (vulnerability_occurrence_id) REFERENCES vulnerability_occurrences(id) ON DELETE CASCADE; @@ -24452,6 +25163,9 @@ ALTER TABLE ONLY vulnerability_occurrence_identifiers ALTER TABLE ONLY serverless_domain_cluster ADD CONSTRAINT fk_rails_e59e868733 FOREIGN KEY (clusters_applications_knative_id) REFERENCES clusters_applications_knative(id) ON DELETE CASCADE; +ALTER TABLE ONLY vulnerability_external_issue_links + ADD CONSTRAINT fk_rails_e5ba7f7b13 FOREIGN KEY (author_id) REFERENCES users(id) ON DELETE SET NULL; + ALTER TABLE ONLY approval_merge_request_rule_sources ADD CONSTRAINT fk_rails_e605a04f76 FOREIGN KEY (approval_merge_request_rule_id) REFERENCES approval_merge_request_rules(id) ON DELETE CASCADE; @@ -24497,6 +25211,9 @@ ALTER TABLE ONLY snippet_statistics ALTER TABLE ONLY project_security_settings ADD CONSTRAINT fk_rails_ed4abe1338 FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; +ALTER TABLE ONLY experiment_subjects + ADD CONSTRAINT fk_rails_ede5754774 FOREIGN KEY (experiment_id) REFERENCES experiments(id) ON DELETE CASCADE; + ALTER TABLE ONLY ci_daily_build_group_report_results ADD CONSTRAINT fk_rails_ee072d13b3 FOREIGN KEY (last_pipeline_id) REFERENCES ci_pipelines(id) ON DELETE CASCADE; @@ -24590,6 +25307,9 @@ ALTER TABLE ONLY resource_label_events ALTER TABLE ONLY ci_builds_metadata ADD CONSTRAINT fk_rails_ffcf702a02 FOREIGN KEY (project_id) REFERENCES projects(id) ON DELETE CASCADE; +ALTER TABLE ONLY services + ADD CONSTRAINT fk_services_inherit_from_id FOREIGN KEY (inherit_from_id) REFERENCES services(id) ON DELETE CASCADE; + ALTER TABLE ONLY timelogs ADD CONSTRAINT fk_timelogs_issues_issue_id FOREIGN KEY (issue_id) REFERENCES issues(id) ON DELETE CASCADE; |