db:check-schema
Passed Started
by
@gitlab-bot

🤖 GitLab Bot 🤖
1main: -> 0.0110s2main: -- add_index("ci_builds", [:name, :id], {:name=>"index_security_ci_builds_on_name_and_id_parser_features", :where=>"(name::text = ANY (ARRAY['container_scanning'::character varying::text,\n 'dast'::character varying::text,\n 'dependency_scanning'::character varying::text,\n 'license_management'::character varying::text,\n 'sast'::character varying::text,\n 'secret_detection'::character varying::text,\n 'coverage_fuzzing'::character varying::text,\n 'license_scanning'::character varying::text,\n 'apifuzzer_fuzz'::character varying::text,\n 'apifuzzer_fuzz_dnd'::character varying::text])\n ) AND type::text = 'Ci::Build'::text", :algorithm=>:concurrently})3main: -> 0.0016s4main: == 20220302203410 CreateIndexSecurityCiBuildsOnNameAndIdParserWithNewFeatures: migrated (0.0209s) 5main: == 20220303190555 AddCommentToDeploymentApprovals: migrating ==================6main: -- add_column(:deployment_approvals, :comment, :text)7main: -> 0.0014s8main: == 20220303190555 AddCommentToDeploymentApprovals: migrated (0.0015s) =========9main: == 20220303191047 AddTextLimitToDeploymentApprovalsComment: migrating =========10main: -- transaction_open?()11main: -> 0.0000s12main: -- current_schema()13main: -> 0.0004s14main: -- transaction_open?()15main: -> 0.0000s16main: -- execute("ALTER TABLE deployment_approvals\nADD CONSTRAINT check_e2eb6a17d8\nCHECK ( char_length(comment) <= 255 )\nNOT VALID;\n")17main: -> 0.0007s18main: -- current_schema()19main: -> 0.0003s20main: -- execute("ALTER TABLE deployment_approvals VALIDATE CONSTRAINT check_e2eb6a17d8;")21main: -> 0.0005s22main: == 20220303191047 AddTextLimitToDeploymentApprovalsComment: migrated (0.0066s) 23main: == 20220304052335 RemoveNotNullContraintOnTitleFromSprints: migrating =========24main: -- change_column_null(:sprints, :title, true)25main: -> 0.0007s26main: == 20220304052335 RemoveNotNullContraintOnTitleFromSprints: migrated (0.0007s) 27main: == 20220304061631 RemoveUniqueIndexForSprintsOnIterationsCadenceIdAndTitle: migrating 28main: -- transaction_open?()29main: -> 0.0000s30main: -- view_exists?(:postgres_partitions)31main: -> 0.0007s32main: -- indexes(:sprints)33main: -> 0.0050s34main: -- remove_index(:sprints, {:algorithm=>:concurrently, :name=>"index_sprints_on_iterations_cadence_id_and_title"})35main: -> 0.0011s36main: == 20220304061631 RemoveUniqueIndexForSprintsOnIterationsCadenceIdAndTitle: migrated (0.0125s) 37main: == 20220304062107 RemoveUniqueIndexForSprintsOnProjectIdAndTitle: migrating ===38main: -- transaction_open?()39main: -> 0.0000s40main: -- view_exists?(:postgres_partitions)41main: -> 0.0007s42main: -- indexes(:sprints)43main: -> 0.0044s44main: -- remove_index(:sprints, {:algorithm=>:concurrently, :name=>"index_sprints_on_project_id_and_title"})45main: -> 0.0010s46main: == 20220304062107 RemoveUniqueIndexForSprintsOnProjectIdAndTitle: migrated (0.0115s) 47main: == 20220304152729 AddDefaultToRequiredPythonOnPackagesPypiMetadata: migrating =48main: -- change_column_default(:packages_pypi_metadata, :required_python, "")49main: -> 0.0020s50main: == 20220304152729 AddDefaultToRequiredPythonOnPackagesPypiMetadata: migrated (0.0020s) 51main: == 20220304165107 DropPartitionedForeignKeys: migrating =======================52main: -- drop_table(:partitioned_foreign_keys)53main: -> 0.0017s54main: == 20220304165107 DropPartitionedForeignKeys: migrated (0.0018s) ==============55main: == 20220304201847 AddUniqueIndexOnSecurityTrainingProviders: migrating ========56main: -- transaction_open?()57main: -> 0.0000s58main: -- view_exists?(:postgres_partitions)59main: -> 0.0007s60main: -- index_exists?(:security_training_providers, :name, {:unique=>true, :name=>"index_security_training_providers_on_unique_name", :algorithm=>:concurrently})61main: -> 0.0010s62main: -- add_index(:security_training_providers, :name, {:unique=>true, :name=>"index_security_training_providers_on_unique_name", :algorithm=>:concurrently})63main: -> 0.0012s64main: == 20220304201847 AddUniqueIndexOnSecurityTrainingProviders: migrated (0.0086s) 65main: == 20220305223212 AddSecurityTrainingProviders: migrating =====================66main: == 20220305223212 AddSecurityTrainingProviders: migrated (0.0164s) ============67main: == 20220307192534 CreateIndexForRemoveDuplicateProjectTagReleases: migrating ==68main: -- transaction_open?()69main: -> 0.0000s70main: -- view_exists?(:postgres_partitions)71main: -> 0.0006s72main: -- index_exists?(:releases, [:project_id, :tag, :id], {:name=>"index_releases_on_id_project_id_tag", :algorithm=>:concurrently})73main: -> 0.0022s74main: -- add_index(:releases, [:project_id, :tag, :id], {:name=>"index_releases_on_id_project_id_tag", :algorithm=>:concurrently})75main: -> 0.0014s76main: == 20220307192534 CreateIndexForRemoveDuplicateProjectTagReleases: migrated (0.0097s) 77main: == 20220307192610 RemoveDuplicateProjectTagReleases: migrating ================78main: == 20220307192610 RemoveDuplicateProjectTagReleases: migrated (0.0016s) =======79main: == 20220307192645 RemoveIndexForRemoveDuplicateProjectTagReleases: migrating ==80main: -- transaction_open?()81main: -> 0.0000s82main: -- view_exists?(:postgres_partitions)83main: -> 0.0006s84main: -- indexes(:releases)85main: -> 0.0025s86main: -- remove_index(:releases, {:algorithm=>:concurrently, :name=>"index_releases_on_id_project_id_tag"})87main: -> 0.0010s88main: == 20220307192645 RemoveIndexForRemoveDuplicateProjectTagReleases: migrated (0.0088s) 89main: == 20220307192725 CreateUniqueIndexReleaseTagProject: migrating ===============90main: -- transaction_open?()91main: -> 0.0000s92main: -- view_exists?(:postgres_partitions)93main: -> 0.0006s94main: -- index_exists?(:releases, [:project_id, :tag], {:unique=>true, :name=>"index_releases_on_project_tag_unique", :algorithm=>:concurrently})95main: -> 0.0021s96main: -- add_index(:releases, [:project_id, :tag], {:unique=>true, :name=>"index_releases_on_project_tag_unique", :algorithm=>:concurrently})97main: -> 0.0012s98main: -- transaction_open?()99main: -> 0.0000s100main: -- view_exists?(:postgres_partitions)101main: -> 0.0006s102main: -- indexes(:releases)103main: -> 0.0026s104main: -- remove_index(:releases, {:algorithm=>:concurrently, :name=>"index_releases_on_project_id_and_tag"})105main: -> 0.0010s106main: == 20220307192725 CreateUniqueIndexReleaseTagProject: migrated (0.0182s) ======107main: == 20220307203458 RenameUserEmailLookupLimitSettingToSearchSettings: migrating 108main: -- add_column(:application_settings, :search_rate_limit, :integer, {:null=>false, :default=>30})109main: -> 0.0023s110main: -- add_column(:application_settings, :search_rate_limit_unauthenticated, :integer, {:null=>false, :default=>10})111main: -> 0.0014s112main: == 20220307203458 RenameUserEmailLookupLimitSettingToSearchSettings: migrated (0.0038s) 113main: == 20220307203459 RenameUserEmailLookupLimitSettingToSearchSettingsCleanup: migrating 114main: == 20220307203459 RenameUserEmailLookupLimitSettingToSearchSettingsCleanup: migrated (0.0020s) 115main: == 20220308000205 DropOldIndexSecurityCiBuildsOnNameAndIdParserFeatures: migrating 116main: -- transaction_open?()117main: -> 0.0000s118main: -- view_exists?(:postgres_partitions)119main: -> 0.0006s120main: -- index_exists?("ci_builds", [:name, :id], {:name=>"index_security_ci_builds_on_name_and_id_parser_features_old", :where=>"(name::text = ANY (ARRAY['container_scanning'::character varying::text,\n 'dast'::character varying::text,\n 'dependency_scanning'::character varying::text,\n 'license_management'::character varying::text,\n 'sast'::character varying::text,\n 'secret_detection'::character varying::text,\n 'coverage_fuzzing'::character varying::text,\n 'license_scanning'::character varying::text])\n ) AND type::text = 'Ci::Build'::text", :algorithm=>:concurrently})121main: -> 0.0115s122main: -- remove_index("ci_builds", {:name=>"index_security_ci_builds_on_name_and_id_parser_features_old", :where=>"(name::text = ANY (ARRAY['container_scanning'::character varying::text,\n 'dast'::character varying::text,\n 'dependency_scanning'::character varying::text,\n 'license_management'::character varying::text,\n 'sast'::character varying::text,\n 'secret_detection'::character varying::text,\n 'coverage_fuzzing'::character varying::text,\n 'license_scanning'::character varying::text])\n ) AND type::text = 'Ci::Build'::text", :algorithm=>:concurrently, :column=>[:name, :id]})123main: -> 0.0120s124main: == 20220308000205 DropOldIndexSecurityCiBuildsOnNameAndIdParserFeatures: migrated (0.0298s) 125main: == 20220308115219 ScheduleResetDuplicateCiRunnersTokenEncryptedValuesOnProjects: migrating 126main: -- transaction_open?()127main: -> 0.0000s128main: -- view_exists?(:postgres_partitions)129main: -> 0.0006s130main: -- index_exists?(:projects, [:id, :runners_token_encrypted], {:where=>"runners_token_encrypted IS NOT NULL", :unique=>false, :name=>"tmp_index_projects_on_id_and_runners_token_encrypted", :algorithm=>:concurrently})131main: -> 0.0201s132main: -- add_index(:projects, [:id, :runners_token_encrypted], {:where=>"runners_token_encrypted IS NOT NULL", :unique=>false, :name=>"tmp_index_projects_on_id_and_runners_token_encrypted", :algorithm=>:concurrently})133main: -> 0.0023s134main: -- transaction_open?()135main: -> 0.0000s136main: -- Scheduled 0 ResetDuplicateCiRunnersTokenEncryptedValuesOnProjects jobs with a maximum of 10000 records per batch and an interval of 120 seconds.137The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:23 UTC."138main: == 20220308115219 ScheduleResetDuplicateCiRunnersTokenEncryptedValuesOnProjects: migrated (0.0351s) 139main: == 20220308115502 ScheduleResetDuplicateCiRunnersTokenValuesOnProjects: migrating 140main: -- transaction_open?()141main: -> 0.0000s142main: -- view_exists?(:postgres_partitions)143main: -> 0.0007s144main: -- index_exists?(:projects, [:id, :runners_token], {:where=>"runners_token IS NOT NULL", :unique=>false, :name=>"tmp_index_projects_on_id_and_runners_token", :algorithm=>:concurrently})145main: -> 0.0210s146main: -- add_index(:projects, [:id, :runners_token], {:where=>"runners_token IS NOT NULL", :unique=>false, :name=>"tmp_index_projects_on_id_and_runners_token", :algorithm=>:concurrently})147main: -> 0.0020s148main: -- transaction_open?()149main: -> 0.0000s150main: -- Scheduled 0 ResetDuplicateCiRunnersTokenValuesOnProjects jobs with a maximum of 10000 records per batch and an interval of 120 seconds.151The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:23 UTC."152main: == 20220308115502 ScheduleResetDuplicateCiRunnersTokenValuesOnProjects: migrated (0.0352s) 153main: == 20220309084838 RemoveExternalPullRequestTracking: migrating ================154main: -- execute("DROP TRIGGER IF EXISTS external_pull_requests_loose_fk_trigger ON external_pull_requests")155main: -> 0.0006s156main: == 20220309084838 RemoveExternalPullRequestTracking: migrated (0.0007s) =======157main: == 20220309084954 RemoveLeftoverExternalPullRequestDeletions: migrating =======158main: -- execute("DELETE FROM \"loose_foreign_keys_deleted_records\"\nWHERE\n(\"loose_foreign_keys_deleted_records\".\"partition\", \"loose_foreign_keys_deleted_records\".\"id\") IN (\n SELECT \"loose_foreign_keys_deleted_records\".\"partition\", \"loose_foreign_keys_deleted_records\".\"id\"\n FROM \"loose_foreign_keys_deleted_records\"\n WHERE\n \"loose_foreign_keys_deleted_records\".\"fully_qualified_table_name\" = 'public.external_pull_requests' AND\n \"loose_foreign_keys_deleted_records\".\"status\" = 1\n LIMIT 100\n)\n")159main: -> 0.0010s160main: == 20220309084954 RemoveLeftoverExternalPullRequestDeletions: migrated (0.0012s) 161main: == 20220309100648 AddTimeToRestoreServiceDoraMetric: migrating ================162main: -- add_column(:dora_daily_metrics, :time_to_restore_service_in_seconds, :integer)163main: -> 0.0011s164main: == 20220309100648 AddTimeToRestoreServiceDoraMetric: migrated (0.0011s) =======165main: == 20220309154855 AddIndexOnIssuesClosedIncidents: migrating ==================166main: -- transaction_open?()167main: -> 0.0000s168main: -- view_exists?(:postgres_partitions)169main: -> 0.0006s170main: -- index_exists?(:issues, [:project_id, :closed_at], {:where=>"issue_type = 1 AND state_id = 2", :name=>"index_on_issues_closed_incidents_by_project_id_and_closed_at", :algorithm=>:concurrently})171main: -> 0.0111s172main: -- add_index(:issues, [:project_id, :closed_at], {:where=>"issue_type = 1 AND state_id = 2", :name=>"index_on_issues_closed_incidents_by_project_id_and_closed_at", :algorithm=>:concurrently})173main: -> 0.0016s174main: == 20220309154855 AddIndexOnIssuesClosedIncidents: migrated (0.0191s) =========175main: == 20220310011530 AddDatabaseGrafanaConfigToApplicationSettings: migrating ====176main: -- add_column(:application_settings, :encrypted_database_grafana_api_key, :binary)177main: -> 0.0015s178main: -- add_column(:application_settings, :encrypted_database_grafana_api_key_iv, :binary)179main: -> 0.0009s180main: -- add_column(:application_settings, :database_grafana_api_url, :text)181main: -> 0.0008s182main: -- add_column(:application_settings, :database_grafana_tag, :text)183main: -> 0.0008s184main: == 20220310011530 AddDatabaseGrafanaConfigToApplicationSettings: migrated (0.0043s) 185main: == 20220310011613 AddTextLimitToDatabaseGrafanaApplicationSettings: migrating =186main: -- transaction_open?()187main: -> 0.0000s188main: -- current_schema()189main: -> 0.0004s190main: -- transaction_open?()191main: -> 0.0000s192main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_3455368420\nCHECK ( char_length(database_grafana_api_url) <= 255 )\nNOT VALID;\n")193main: -> 0.0012s194main: -- current_schema()195main: -> 0.0003s196main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_3455368420;")197main: -> 0.0010s198main: -- transaction_open?()199main: -> 0.0000s200main: -- current_schema()201main: -> 0.0004s202main: -- transaction_open?()203main: -> 0.0000s204main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_2b820eaac3\nCHECK ( char_length(database_grafana_tag) <= 255 )\nNOT VALID;\n")205main: -> 0.0010s206main: -- current_schema()207main: -> 0.0004s208main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_2b820eaac3;")209main: -> 0.0010s210main: == 20220310011613 AddTextLimitToDatabaseGrafanaApplicationSettings: migrated (0.0148s) 211main: == 20220310095341 AddAsyncIndexCiJobArtifactsProjectIdCreatedAt: migrating ====212main: -- index_exists?(:ci_job_artifacts, [:project_id, :created_at, :id], {:name=>"index_ci_job_artifacts_on_id_project_id_and_created_at", :algorithm=>:concurrently})213main: -> 0.0048s214main: -- add_index_options(:ci_job_artifacts, [:project_id, :created_at, :id], {:name=>"index_ci_job_artifacts_on_id_project_id_and_created_at", :algorithm=>:concurrently})215main: -> 0.0000s216main: == 20220310095341 AddAsyncIndexCiJobArtifactsProjectIdCreatedAt: migrated (0.0095s) 217main: == 20220310101118 UpdateHolderNameLimit: migrating ============================218main: -- transaction_open?()219main: -> 0.0000s220main: -- current_schema()221main: -> 0.0004s222main: -- transaction_open?()223main: -> 0.0000s224main: -- execute("ALTER TABLE user_credit_card_validations\nADD CONSTRAINT check_cc0c8dc0fe\nCHECK ( char_length(holder_name) <= 50 )\nNOT VALID;\n")225main: -> 0.0008s226main: -- current_schema()227main: -> 0.0003s228main: -- execute("ALTER TABLE user_credit_card_validations VALIDATE CONSTRAINT check_cc0c8dc0fe;")229main: -> 0.0006s230main: -- transaction_open?()231main: -> 0.0000s232main: -- transaction_open?()233main: -> 0.0000s234main: -- execute(" ALTER TABLE user_credit_card_validations\n DROP CONSTRAINT IF EXISTS check_eafe45d88b\n")235main: -> 0.0006s236main: == 20220310101118 UpdateHolderNameLimit: migrated (0.0096s) ===================237main: == 20220310134207 AddIndexProjectIdAndReleasedAtAndIdOnReleases: migrating ====238main: -- transaction_open?()239main: -> 0.0000s240main: -- view_exists?(:postgres_partitions)241main: -> 0.0007s242main: -- index_exists?(:releases, [:project_id, :released_at, :id], {:name=>"index_releases_on_project_id_and_released_at_and_id", :algorithm=>:concurrently})243main: -> 0.0024s244main: -- add_index(:releases, [:project_id, :released_at, :id], {:name=>"index_releases_on_project_id_and_released_at_and_id", :algorithm=>:concurrently})245main: -> 0.0013s246main: == 20220310134207 AddIndexProjectIdAndReleasedAtAndIdOnReleases: migrated (0.0102s) 247main: == 20220310141349 RemoveDependencyListUsageDataFromRedis: migrating ===========248main: == 20220310141349 RemoveDependencyListUsageDataFromRedis: migrated (0.0006s) ==249main: == 20220311010352 CreateScanIdAndIdIndexOnSecurityFindings: migrating =========250main: -- transaction_open?()251main: -> 0.0000s252main: -- view_exists?(:postgres_partitions)253main: -> 0.0007s254main: -- index_exists?(:security_findings, [:scan_id, :id], {:name=>"index_security_findings_on_scan_id_and_id", :algorithm=>:concurrently})255main: -> 0.0032s256main: -- add_index(:security_findings, [:scan_id, :id], {:name=>"index_security_findings_on_scan_id_and_id", :algorithm=>:concurrently})257main: -> 0.0012s258main: == 20220311010352 CreateScanIdAndIdIndexOnSecurityFindings: migrated (0.0107s) 259main: == 20220314094841 AddPackageRegistryAccessLevelIntoProjectFeatures: migrating =260main: -- add_column(:project_features, :package_registry_access_level, :integer, {:default=>0, :null=>false})261main: -> 0.0015s262main: == 20220314094841 AddPackageRegistryAccessLevelIntoProjectFeatures: migrated (0.0016s) 263main: == 20220314154235 MigrateVulnerabilityApprovalRules: migrating ================264main: == 20220314154235 MigrateVulnerabilityApprovalRules: migrated (0.0002s) =======265main: == 20220314162342 AddIndexCiJobArtifactsProjectIdCreatedAt: migrating =========266main: -- transaction_open?()267main: -> 0.0000s268main: -- view_exists?(:postgres_partitions)269main: -> 0.0007s270main: -- index_exists?(:ci_job_artifacts, [:project_id, :created_at, :id], {:name=>"index_ci_job_artifacts_on_id_project_id_and_created_at", :algorithm=>:concurrently})271main: -> 0.0048s272main: -- add_index(:ci_job_artifacts, [:project_id, :created_at, :id], {:name=>"index_ci_job_artifacts_on_id_project_id_and_created_at", :algorithm=>:concurrently})273main: -> 0.0013s274main: == 20220314162342 AddIndexCiJobArtifactsProjectIdCreatedAt: migrated (0.0142s) 275main: == 20220314184009 CreateProtectedEnvironmentApprovalRules: migrating ==========276main: -- create_table(:protected_environment_approval_rules, {})277main: -> 0.0046s278main: == 20220314184009 CreateProtectedEnvironmentApprovalRules: migrated (0.0047s) =279main: == 20220314184109 AddUserFkToProtectedEnvironmentApprovalRules: migrating =====280main: -- transaction_open?()281main: -> 0.0000s282main: -- foreign_keys(:protected_environment_approval_rules)283main: -> 0.0023s284main: -- transaction_open?()285main: -> 0.0000s286main: -- execute("ALTER TABLE protected_environment_approval_rules\nADD CONSTRAINT fk_6ee8249821\nFOREIGN KEY (user_id)\nREFERENCES users (id)\nON DELETE CASCADE\nNOT VALID;\n")287main: -> 0.0013s288main: -- execute("ALTER TABLE protected_environment_approval_rules VALIDATE CONSTRAINT fk_6ee8249821;")289main: -> 0.0012s290main: == 20220314184109 AddUserFkToProtectedEnvironmentApprovalRules: migrated (0.0075s) 291main: == 20220314184209 AddGroupFkToProtectedEnvironmentApprovalRules: migrating ====292main: -- transaction_open?()293main: -> 0.0000s294main: -- foreign_keys(:protected_environment_approval_rules)295main: -> 0.0023s296main: -- transaction_open?()297main: -> 0.0000s298main: -- execute("ALTER TABLE protected_environment_approval_rules\nADD CONSTRAINT fk_405568b491\nFOREIGN KEY (group_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")299main: -> 0.0012s300main: -- execute("ALTER TABLE protected_environment_approval_rules VALIDATE CONSTRAINT fk_405568b491;")301main: -> 0.0012s302main: == 20220314184209 AddGroupFkToProtectedEnvironmentApprovalRules: migrated (0.0075s) 303main: == 20220314194009 AddApprovalRuleIdToDeploymentApprovals: migrating ===========304main: -- add_column(:deployment_approvals, :approval_rule_id, :bigint)305main: -> 0.0010s306main: == 20220314194009 AddApprovalRuleIdToDeploymentApprovals: migrated (0.0010s) ==307main: == 20220314194149 AddProjectCiSecureFilesToPlanLimits: migrating ==============308main: -- add_column(:plan_limits, :project_ci_secure_files, :integer, {:default=>100, :null=>false})309main: -> 0.0016s310main: == 20220314194149 AddProjectCiSecureFilesToPlanLimits: migrated (0.0016s) =====311main: == 20220314204009 AddApprovalRuleFkToDeploymentApprovals: migrating ===========312main: -- transaction_open?()313main: -> 0.0000s314main: -- view_exists?(:postgres_partitions)315main: -> 0.0006s316main: -- index_exists?(:deployment_approvals, :approval_rule_id, {:name=>"index_deployment_approvals_on_approval_rule_id", :algorithm=>:concurrently})317main: -> 0.0018s318main: -- add_index(:deployment_approvals, :approval_rule_id, {:name=>"index_deployment_approvals_on_approval_rule_id", :algorithm=>:concurrently})319main: -> 0.0011s320main: -- transaction_open?()321main: -> 0.0000s322main: -- foreign_keys(:deployment_approvals)323main: -> 0.0022s324main: -- transaction_open?()325main: -> 0.0000s326main: -- execute("ALTER TABLE deployment_approvals\nADD CONSTRAINT fk_61cdbdc5b9\nFOREIGN KEY (approval_rule_id)\nREFERENCES protected_environment_approval_rules (id)\nON DELETE SET NULL\nNOT VALID;\n")327main: -> 0.0010s328main: -- execute("ALTER TABLE deployment_approvals VALIDATE CONSTRAINT fk_61cdbdc5b9;")329main: -> 0.0008s330main: == 20220314204009 AddApprovalRuleFkToDeploymentApprovals: migrated (0.0155s) ==331main: == 20220315171027 AddTmpIndexToSupportLeakyRegexCleanup: migrating ============332main: -- transaction_open?()333main: -> 0.0000s334main: -- view_exists?(:postgres_partitions)335main: -> 0.0006s336main: -- index_exists?(:merge_requests, :id, {:where=>"draft = true AND state_id = 1 AND ((title)::text ~* '^\\[draft\\]|\\(draft\\)|draft:|draft|\\[WIP\\]|WIP:|WIP'::text) AND ((title)::text !~* '^(\\[draft\\]|\\(draft\\)|draft:|draft|\\[WIP\\]|WIP:|WIP)'::text)", :name=>"tmp_index_merge_requests_draft_and_status_leaky_regex", :algorithm=>:concurrently})337main: -> 0.0124s338main: -- add_index(:merge_requests, :id, {:where=>"draft = true AND state_id = 1 AND ((title)::text ~* '^\\[draft\\]|\\(draft\\)|draft:|draft|\\[WIP\\]|WIP:|WIP'::text) AND ((title)::text !~* '^(\\[draft\\]|\\(draft\\)|draft:|draft|\\[WIP\\]|WIP:|WIP)'::text)", :name=>"tmp_index_merge_requests_draft_and_status_leaky_regex", :algorithm=>:concurrently})339main: -> 0.0015s340main: == 20220315171027 AddTmpIndexToSupportLeakyRegexCleanup: migrated (0.0197s) ===341main: == 20220315171129 CleanupDraftDataFromFaultyRegex: migrating ==================342main: == 20220315171129 CleanupDraftDataFromFaultyRegex: migrated (0.0000s) =========343main: == 20220315181125 RemoveIssuesWorkItemTypeIdIndex: migrating ==================344main: -- transaction_open?()345main: -> 0.0000s346main: -- view_exists?(:postgres_partitions)347main: -> 0.0006s348main: -- indexes(:issues)349main: -> 0.0113s350main: -- remove_index(:issues, {:algorithm=>:concurrently, :name=>"index_issues_on_work_item_type_id"})351main: -> 0.0010s352main: == 20220315181125 RemoveIssuesWorkItemTypeIdIndex: migrated (0.0177s) =========353main: == 20220315181130 AddTemporaryIssueTypeIndexForWorkItemTypes: migrating =======354main: -- transaction_open?()355main: -> 0.0000s356main: -- view_exists?(:postgres_partitions)357main: -> 0.0005s358main: -- index_exists?(:issues, [:issue_type, :id], {:name=>"tmp_index_issues_on_issue_type_and_id", :algorithm=>:concurrently})359main: -> 0.0109s360main: -- add_index(:issues, [:issue_type, :id], {:name=>"tmp_index_issues_on_issue_type_and_id", :algorithm=>:concurrently})361main: -> 0.0013s362main: == 20220315181130 AddTemporaryIssueTypeIndexForWorkItemTypes: migrated (0.0178s) 363main: == 20220315181136 BackfillWorkItemTypeIdOnIssues: migrating ===================364main: == 20220315181136 BackfillWorkItemTypeIdOnIssues: migrated (0.0000s) ==========365main: == 20220315211043 AddIndexToVulnerabilityReads: migrating =====================366main: -- transaction_open?()367main: -> 0.0000s368main: -- view_exists?(:postgres_partitions)369main: -> 0.0006s370main: -- index_exists?(:vulnerability_reads, [:project_id, :state, :report_type, :severity, :vulnerability_id], {:name=>"index_vulnerability_reads_common_finder_query", :order=>{:vulnerability_id=>:desc}, :algorithm=>:concurrently})371main: -> 0.0034s372main: -- add_index(:vulnerability_reads, [:project_id, :state, :report_type, :severity, :vulnerability_id], {:name=>"index_vulnerability_reads_common_finder_query", :order=>{:vulnerability_id=>:desc}, :algorithm=>:concurrently})373main: -> 0.0014s374main: == 20220315211043 AddIndexToVulnerabilityReads: migrated (0.0109s) ============375main: == 20220316022505 CreateNamespaceDetails: migrating ===========================376main: -- transaction_open?()377main: -> 0.0000s378main: -- create_table(:namespace_details, {:id=>false})379main: -- quote_column_name(:description)380main: -> 0.0000s381main: -- quote_column_name(:description_html)382main: -> 0.0000s383main: -> 0.0032s384main: == 20220316022505 CreateNamespaceDetails: migrated (0.0060s) ==================385main: == 20220316095126 AddCreatorIdToDeployTokens: migrating =======================386main: -- add_column(:deploy_tokens, :creator_id, :bigint)387main: -> 0.0011s388main: == 20220316095126 AddCreatorIdToDeployTokens: migrated (0.0011s) ==============389main: == 20220316102900 AddIndexToDeployTokensOnCreatorId: migrating ================390main: -- transaction_open?()391main: -> 0.0000s392main: -- view_exists?(:postgres_partitions)393main: -> 0.0006s394main: -- index_exists?(:deploy_tokens, :creator_id, {:name=>"index_deploy_tokens_on_creator_id", :algorithm=>:concurrently})395main: -> 0.0022s396main: -- add_index(:deploy_tokens, :creator_id, {:name=>"index_deploy_tokens_on_creator_id", :algorithm=>:concurrently})397main: -> 0.0012s398main: == 20220316102900 AddIndexToDeployTokensOnCreatorId: migrated (0.0093s) =======399main: == 20220316102902 AddUserForeignKeyToDeployTokens: migrating ==================400main: -- transaction_open?()401main: -> 0.0000s402main: -- foreign_keys(:deploy_tokens)403main: -> 0.0030s404main: -- transaction_open?()405main: -> 0.0000s406main: -- execute("LOCK TABLE users, deploy_tokens IN SHARE ROW EXCLUSIVE MODE")407main: -> 0.0004s408main: -- execute("ALTER TABLE deploy_tokens\nADD CONSTRAINT fk_7082f8a288\nFOREIGN KEY (creator_id)\nREFERENCES users (id)\nON DELETE SET NULL\nNOT VALID;\n")409main: -> 0.0012s410main: -- execute("ALTER TABLE deploy_tokens VALIDATE CONSTRAINT fk_7082f8a288;")411main: -> 0.0013s412main: == 20220316102902 AddUserForeignKeyToDeployTokens: migrated (0.0088s) =========413main: == 20220316112118 UpdateOrganizationsNameIndexAddId: migrating ================414main: -- transaction_open?()415main: -> 0.0000s416main: -- view_exists?(:postgres_partitions)417main: -> 0.0006s418main: -- index_exists?(:customer_relations_organizations, "group_id, lower(name), id", {:name=>"index_organizations_on_unique_name_per_group", :unique=>true, :algorithm=>:concurrently})419main: -> 0.0012s420main: -- add_index(:customer_relations_organizations, "group_id, lower(name), id", {:name=>"index_organizations_on_unique_name_per_group", :unique=>true, :algorithm=>:concurrently})421main: -> 0.0012s422main: -- transaction_open?()423main: -> 0.0000s424main: -- view_exists?(:postgres_partitions)425main: -> 0.0005s426main: -- indexes(:customer_relations_organizations)427main: -> 0.0012s428main: -- remove_index(:customer_relations_organizations, {:algorithm=>:concurrently, :name=>"index_customer_relations_organizations_on_unique_name_per_group"})429main: -> 0.0010s430main: == 20220316112118 UpdateOrganizationsNameIndexAddId: migrated (0.0157s) =======431main: == 20220316112206 AddContactsIndexOnGroupEmailAndId: migrating ================432main: -- transaction_open?()433main: -> 0.0000s434main: -- view_exists?(:postgres_partitions)435main: -> 0.0006s436main: -- index_exists?(:customer_relations_contacts, "group_id, lower(email), id", {:name=>"index_customer_relations_contacts_on_unique_email_per_group", :unique=>true, :algorithm=>:concurrently})437main: -> 0.0019s438main: -- add_index(:customer_relations_contacts, "group_id, lower(email), id", {:name=>"index_customer_relations_contacts_on_unique_email_per_group", :unique=>true, :algorithm=>:concurrently})439main: -> 0.0012s440main: == 20220316112206 AddContactsIndexOnGroupEmailAndId: migrated (0.0092s) =======441main: == 20220316165539 AddIndexToVulnerabilities: migrating ========================442main: -- transaction_open?()443main: -> 0.0000s444main: -- view_exists?(:postgres_partitions)445main: -> 0.0009s446main: -- index_exists?(:vulnerabilities, [:project_id, :state, :report_type, :severity, :id], {:name=>"index_vulnerabilites_common_finder_query", :algorithm=>:concurrently})447main: -> 0.0064s448main: -- add_index(:vulnerabilities, [:project_id, :state, :report_type, :severity, :id], {:name=>"index_vulnerabilites_common_finder_query", :algorithm=>:concurrently})449main: -> 0.0015s450main: == 20220316165539 AddIndexToVulnerabilities: migrated (0.0149s) ===============451main: == 20220316202200 AddMigrationPlanToContainerRepositories: migrating ==========452main: -- add_column(:container_repositories, :migration_plan, :text)453main: -> 0.0011s454main: == 20220316202200 AddMigrationPlanToContainerRepositories: migrated (0.0012s) =455main: == 20220316202402 AddTextLimitToContainerRepositoriesMigrationPlan: migrating =456main: -- transaction_open?()457main: -> 0.0000s458main: -- current_schema()459main: -> 0.0004s460main: -- transaction_open?()461main: -> 0.0000s462main: -- execute("ALTER TABLE container_repositories\nADD CONSTRAINT check_05e9012f36\nCHECK ( char_length(migration_plan) <= 255 )\nNOT VALID;\n")463main: -> 0.0007s464main: -- current_schema()465main: -> 0.0003s466main: -- execute("ALTER TABLE container_repositories VALIDATE CONSTRAINT check_05e9012f36;")467main: -> 0.0006s468main: == 20220316202402 AddTextLimitToContainerRepositoriesMigrationPlan: migrated (0.0064s) 469main: == 20220316202640 PopulateContainerRepositoriesMigrationPlan: migrating =======470main: -- transaction_open?()471main: -> 0.0000s472main: -- Scheduled 0 PopulateContainerRepositoryMigrationPlan jobs with a maximum of 1500 records per batch and an interval of 120 seconds.473The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:24 UTC."474main: == 20220316202640 PopulateContainerRepositoriesMigrationPlan: migrated (0.0041s) 475main: == 20220317161914 RemoveCiRunnersCiBuildsRunnerIdFk: migrating ================476main: -- foreign_keys(:ci_builds)477main: -> 0.0024s478main: -- transaction_open?()479main: -> 0.0000s480main: -- transaction_open?()481main: -> 0.0000s482main: -- execute("LOCK ci_runners, ci_builds IN ACCESS EXCLUSIVE MODE")483main: -> 0.0005s484main: -- foreign_keys(:ci_builds)485main: -> 0.0023s486main: -- remove_foreign_key(:ci_builds, :ci_runners, {:name=>"fk_e4ef9c2f27"})487main: -> 0.0031s488main: == 20220317161914 RemoveCiRunnersCiBuildsRunnerIdFk: migrated (0.0108s) =======489main: == 20220317170122 AddNotificationLevelToNamespaceRootStorageStatistics: migrating 490main: -- add_column(:namespace_root_storage_statistics, :notification_level, :integer, {:limit=>2, :default=>100, :null=>false})491main: -> 0.0012s492main: == 20220317170122 AddNotificationLevelToNamespaceRootStorageStatistics: migrated (0.0013s) 493main: == 20220318111040 AddIndexesForPrimaryEmailSecondCleanupMigration: migrating ==494main: -- indexes(:users)495main: -> 0.0105s496main: -- current_schema()497main: -> 0.0005s498main: -- execute("CREATE INDEX CONCURRENTLY index_users_on_id_for_primary_email_migration\nON users (id) INCLUDE (email, confirmed_at)\nWHERE confirmed_at IS NOT NULL\n")499main: -> 0.0018s500main: -- transaction_open?()501main: -> 0.0000s502main: -- view_exists?(:postgres_partitions)503main: -> 0.0006s504main: -- index_exists?(:emails, [:email, :user_id], {:name=>:index_emails_on_email_user_id, :algorithm=>:concurrently})505main: -> 0.0023s506main: -- add_index(:emails, [:email, :user_id], {:name=>:index_emails_on_email_user_id, :algorithm=>:concurrently})507main: -> 0.0013s508main: == 20220318111040 AddIndexesForPrimaryEmailSecondCleanupMigration: migrated (0.0251s) 509main: == 20220318111729 CleanupAfterFixingIssueWhenAdminChangedPrimaryEmail: migrating 510main: == 20220318111729 CleanupAfterFixingIssueWhenAdminChangedPrimaryEmail: migrated (0.0044s) 511main: == 20220318111949 DropTemporaryIndexesForPrimaryEmailMigrationSecondCleanup: migrating 512main: -- transaction_open?()513main: -> 0.0000s514main: -- view_exists?(:postgres_partitions)515main: -> 0.0008s516main: -- indexes(:users)517main: -> 0.0112s518main: -- remove_index(:users, {:algorithm=>:concurrently, :name=>:index_users_on_id_for_primary_email_migration})519main: -> 0.0015s520main: -- transaction_open?()521main: -> 0.0000s522main: -- view_exists?(:postgres_partitions)523main: -> 0.0006s524main: -- indexes(:emails)525main: -> 0.0027s526main: -- remove_index(:emails, {:algorithm=>:concurrently, :name=>:index_emails_on_email_user_id})527main: -> 0.0010s528main: == 20220318111949 DropTemporaryIndexesForPrimaryEmailMigrationSecondCleanup: migrated (0.0292s) 529main: == 20220318120802 AddTargetPlatformsToProjectSetting: migrating ===============530main: -- add_column(:project_settings, :target_platforms, :string, {:array=>true, :default=>[], :null=>false, :if_not_exists=>true})531main: -> 0.0033s532main: == 20220318120802 AddTargetPlatformsToProjectSetting: migrated (0.0034s) ======533main: == 20220318141037 AddPagesOnboardingState: migrating ==========================534main: -- add_column(:project_pages_metadata, :onboarding_complete, :boolean, {:default=>false, :null=>false})535main: -> 0.0018s536main: == 20220318141037 AddPagesOnboardingState: migrated (0.0019s) =================537main: == 20220321025720 AlterConstraintRemoteImportUrl: migrating ===================538main: -- transaction_open?()539main: -> 0.0000s540main: -- transaction_open?()541main: -> 0.0000s542main: -- execute(" ALTER TABLE import_export_uploads\n DROP CONSTRAINT IF EXISTS check_58f0d37481\n")543main: -> 0.0007s544main: -- transaction_open?()545main: -> 0.0000s546main: -- current_schema()547main: -> 0.0004s548main: -- transaction_open?()549main: -> 0.0000s550main: -- execute("ALTER TABLE import_export_uploads\nADD CONSTRAINT check_58f0d37481\nCHECK ( char_length(remote_import_url) <= 2048 )\nNOT VALID;\n")551main: -> 0.0008s552main: -- current_schema()553main: -> 0.0003s554main: -- execute("ALTER TABLE import_export_uploads VALIDATE CONSTRAINT check_58f0d37481;")555main: -> 0.0006s556main: == 20220321025720 AlterConstraintRemoteImportUrl: migrated (0.0101s) ==========557main: == 20220321150028 AddStartedAtToBatchedBackgroundMigrationsTable: migrating ===558main: -- add_column(:batched_background_migrations, :started_at, :datetime_with_timezone)559main: -> 0.0011s560main: == 20220321150028 AddStartedAtToBatchedBackgroundMigrationsTable: migrated (0.0012s) 561main: == 20220321201912 RemoveUserEmailLookupLimit: migrating =======================562main: -- remove_column(:application_settings, :user_email_lookup_limit)563main: -> 0.0018s564main: == 20220321201912 RemoveUserEmailLookupLimit: migrated (0.0019s) ==============565main: == 20220321234317 RemoveAllIssuableEscalationStatuses: migrating ==============566main: -- transaction_open?()567main: -> 0.0000s568main: == 20220321234317 RemoveAllIssuableEscalationStatuses: migrated (0.0160s) =====569main: == 20220322023800 AddTmpIndexRoutesIdForProjectNamespaces: migrating ==========570main: -- transaction_open?()571main: -> 0.0000s572main: -- view_exists?(:postgres_partitions)573main: -> 0.0007s574main: -- index_exists?(:routes, :id, {:where=>"namespace_id IS NULL AND source_type = 'Project'", :name=>"tmp_index_for_project_namespace_id_migration_on_routes", :algorithm=>:concurrently})575main: -> 0.0037s576main: -- add_index(:routes, :id, {:where=>"namespace_id IS NULL AND source_type = 'Project'", :name=>"tmp_index_for_project_namespace_id_migration_on_routes", :algorithm=>:concurrently})577main: -> 0.0013s578main: == 20220322023800 AddTmpIndexRoutesIdForProjectNamespaces: migrated (0.0115s) =579main: == 20220322035654 AddMigrationPlanIndexToContainerRepositories: migrating =====580main: -- transaction_open?()581main: -> 0.0000s582main: -- view_exists?(:postgres_partitions)583main: -> 0.0007s584main: -- index_exists?(:container_repositories, [:migration_state, :migration_plan, :created_at], {:name=>"idx_container_repos_on_migration_state_migration_plan_created", :algorithm=>:concurrently})585main: -> 0.0048s586main: -- add_index(:container_repositories, [:migration_state, :migration_plan, :created_at], {:name=>"idx_container_repos_on_migration_state_migration_plan_created", :algorithm=>:concurrently})587main: -> 0.0014s588main: == 20220322035654 AddMigrationPlanIndexToContainerRepositories: migrated (0.0128s) 589main: == 20220322071127 FinalizeProjectNamespacesBackfill: migrating ================590main: == 20220322071127 FinalizeProjectNamespacesBackfill: migrated (0.0124s) =======591main: == 20220322094410 RemoveWikiNotes: migrating ==================================592main: == 20220322094410 RemoveWikiNotes: migrated (0.0152s) =========================593main: == 20220322132242 UpdatePagesOnboardingState: migrating =======================594main: == 20220322132242 UpdatePagesOnboardingState: migrated (0.0032s) ==============595main: == 20220322143441 AddDoraIncidentsCount: migrating ============================596main: -- add_column(:dora_daily_metrics, :incidents_count, :integer)597main: -> 0.0011s598main: == 20220322143441 AddDoraIncidentsCount: migrated (0.0012s) ===================599main: == 20220322205004 ChangeSearchRateLimitDefaultValues: migrating ===============600main: -- change_column_default(:application_settings, :search_rate_limit, {:from=>30, :to=>300})601main: -> 0.1146s602main: -- change_column_default(:application_settings, :search_rate_limit_unauthenticated, {:from=>10, :to=>100})603main: -> 0.1155s604main: == 20220322205004 ChangeSearchRateLimitDefaultValues: migrated (0.2303s) ======605main: == 20220322205008 ChangeSearchRateLimitValues: migrating ======================606main: -- execute("update application_settings set search_rate_limit=300 where search_rate_limit IN (30,60)")607main: -> 0.0018s608main: -- execute("update application_settings set search_rate_limit_unauthenticated=100 where search_rate_limit_unauthenticated = 10")609main: -> 0.0010s610main: == 20220322205008 ChangeSearchRateLimitValues: migrated (0.0029s) =============611main: == 20220323023800 BackfillNamespaceIdForProjectRoutes: migrating ==============612main: == 20220323023800 BackfillNamespaceIdForProjectRoutes: migrated (0.0247s) =====613main: == 20220323130000 AddTempIndexOnNullProjectNamespaceIds: migrating ============614main: -- transaction_open?()615main: -> 0.0000s616main: -- view_exists?(:postgres_partitions)617main: -> 0.0007s618main: -- index_exists?(:projects, :id, {:name=>"tmp_index_for_null_project_namespace_id", :where=>"project_namespace_id IS NULL", :algorithm=>:concurrently})619main: -> 0.0215s620main: -- add_index(:projects, :id, {:name=>"tmp_index_for_null_project_namespace_id", :where=>"project_namespace_id IS NULL", :algorithm=>:concurrently})621main: -> 0.0019s622main: == 20220323130000 AddTempIndexOnNullProjectNamespaceIds: migrated (0.0301s) ===623main: == 20220323152202 AddIndexOnVisibleDeployments: migrating =====================624main: -- transaction_open?()625main: -> 0.0000s626main: -- view_exists?(:postgres_partitions)627main: -> 0.0006s628main: -- index_exists?(:deployments, [:environment_id, :finished_at], {:order=>{:finished_at=>:desc}, :where=>"status IN (1, 2, 3, 4, 6)", :name=>"index_deployments_for_visible_scope", :algorithm=>:concurrently})629main: -> 0.0098s630main: -- add_index(:deployments, [:environment_id, :finished_at], {:order=>{:finished_at=>:desc}, :where=>"status IN (1, 2, 3, 4, 6)", :name=>"index_deployments_for_visible_scope", :algorithm=>:concurrently})631main: -> 0.0014s632main: == 20220323152202 AddIndexOnVisibleDeployments: migrated (0.0175s) ============633main: == 20220324032250 MigrateShimoConfluenceServiceCategory: migrating ============634main: -- transaction_open?()635main: -> 0.0000s636main: -- Scheduled 0 MigrateShimoConfluenceIntegrationCategory jobs with a maximum of 10000 records per batch and an interval of 120 seconds.637The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:24 UTC."638main: == 20220324032250 MigrateShimoConfluenceServiceCategory: migrated (0.0029s) ===639main: == 20220324081709 FixAndBackfillProjectNamespacesForProjectsWithDuplicateName: migrating 640main: -- transaction_open?()641main: -> 0.0000s642main: -- Scheduled 0 FixDuplicateProjectNameAndPath jobs with a maximum of 1000 records per batch and an interval of 120 seconds.643The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:24 UTC."644main: == 20220324081709 FixAndBackfillProjectNamespacesForProjectsWithDuplicateName: migrated (0.0043s) 645main: == 20220324091224 AddEnforceAuthChecksOnUploadsToProjectSettings: migrating ===646main: -- add_column(:project_settings, :enforce_auth_checks_on_uploads, :boolean, {:null=>false, :default=>true})647main: -> 0.0013s648main: == 20220324091224 AddEnforceAuthChecksOnUploadsToProjectSettings: migrated (0.0013s) 649main: == 20220324110247 UntrackDeletionsOnCiJobArtifacts: migrating =================650main: -- execute("DROP TRIGGER IF EXISTS ci_job_artifacts_loose_fk_trigger ON ci_job_artifacts")651main: -> 0.0006s652main: == 20220324110247 UntrackDeletionsOnCiJobArtifacts: migrated (0.0007s) ========653main: == 20220324165436 ScheduleBackfillProjectSettings: migrating ==================654main: == 20220324165436 ScheduleBackfillProjectSettings: migrated (0.0252s) =========655main: == 20220324171254 AddPublicGitLabRunnerReleasesUrlToApplicationSettings: migrating 656main: -- add_column(:application_settings, :public_runner_releases_url, :text, {:null=>false, :default=>"https://gitlab.com/api/v4/projects/gitlab-org%2Fgitlab-runner/releases"})657main: -> 0.0023s658main: == 20220324171254 AddPublicGitLabRunnerReleasesUrlToApplicationSettings: migrated (0.0024s) 659main: == 20220324173554 AddTextLimitToPublicGitLabRunnerReleasesUrlApplicationSettings: migrating 660main: -- transaction_open?()661main: -> 0.0000s662main: -- current_schema()663main: -> 0.0004s664main: -- transaction_open?()665main: -> 0.0000s666main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_8dca35398a\nCHECK ( char_length(public_runner_releases_url) <= 255 )\nNOT VALID;\n")667main: -> 0.0014s668main: -- current_schema()669main: -> 0.0003s670main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_8dca35398a;")671main: -> 0.0011s672main: == 20220324173554 AddTextLimitToPublicGitLabRunnerReleasesUrlApplicationSettings: migrated (0.0083s) 673main: == 20220324175325 AddKeyDataToSecureFiles: migrating ==========================674main: -- column_exists?(:ci_secure_files, :key_data)675main: -> 0.0015s676main: -- add_column(:ci_secure_files, :key_data, :text)677main: -> 0.0008s678main: -- transaction_open?()679main: -> 0.0000s680main: -- current_schema()681main: -> 0.0003s682main: -- transaction_open?()683main: -> 0.0000s684main: -- execute("ALTER TABLE ci_secure_files\nADD CONSTRAINT check_7279b4e293\nCHECK ( char_length(key_data) <= 128 )\nNOT VALID;\n")685main: -> 0.0007s686main: -- current_schema()687main: -> 0.0003s688main: -- execute("ALTER TABLE ci_secure_files VALIDATE CONSTRAINT check_7279b4e293;")689main: -> 0.0006s690main: == 20220324175325 AddKeyDataToSecureFiles: migrated (0.0091s) =================691main: == 20220324180717 RemoveProjectPagesMetadataArtifactsArchiveIdColumn: migrating 692main: -- remove_column(:project_pages_metadata, :artifacts_archive_id)693main: -> 0.0014s694main: == 20220324180717 RemoveProjectPagesMetadataArtifactsArchiveIdColumn: migrated (0.0014s) 695main: == 20220325000000 PrepareIndexForCiJobArtifactsUnlockedWithExpireAt: migrating 696main: -- index_exists?("ci_job_artifacts", [:expire_at], {:where=>"locked = 0 AND expire_at IS NOT NULL", :name=>"index_ci_job_artifacts_on_expire_at_for_removal", :algorithm=>:concurrently})697main: -> 0.0052s698main: -- add_index_options("ci_job_artifacts", [:expire_at], {:where=>"locked = 0 AND expire_at IS NOT NULL", :name=>"index_ci_job_artifacts_on_expire_at_for_removal", :algorithm=>:concurrently})699main: -> 0.0001s700main: == 20220325000000 PrepareIndexForCiJobArtifactsUnlockedWithExpireAt: migrated (0.0100s) 701main: == 20220325000001 FinalizeIndexForCiJobArtifactsUnlockedWithExpireAt: migrating 702main: -- transaction_open?()703main: -> 0.0000s704main: -- view_exists?(:postgres_partitions)705main: -> 0.0010s706main: -- index_exists?("ci_job_artifacts", [:expire_at], {:where=>"locked = 0 AND expire_at IS NOT NULL", :name=>"index_ci_job_artifacts_on_expire_at_for_removal", :algorithm=>:concurrently})707main: -> 0.0058s708main: -- add_index("ci_job_artifacts", [:expire_at], {:where=>"locked = 0 AND expire_at IS NOT NULL", :name=>"index_ci_job_artifacts_on_expire_at_for_removal", :algorithm=>:concurrently})709main: -> 0.0014s710main: == 20220325000001 FinalizeIndexForCiJobArtifactsUnlockedWithExpireAt: migrated (0.0170s) 711main: == 20220325050642 DropIntegrationsTemplateColumn: migrating ===================712main: -- remove_column(:integrations, :template, :boolean, {:default=>false})713main: -> 0.0010s714main: == 20220325050642 DropIntegrationsTemplateColumn: migrated (0.0011s) ==========715main: == 20220325155953 StealBackgroundJobForFixingConflictingProjectNamesAndPaths: migrating 716main: == 20220325155953 StealBackgroundJobForFixingConflictingProjectNamesAndPaths: migrated (0.0013s) 717main: == 20220325160153 CreateUniqueIndexOnProjectsNameAndNamespaceId: migrating ====718main: -- transaction_open?()719main: -> 0.0000s720main: -- view_exists?(:postgres_partitions)721main: -> 0.0007s722main: -- index_exists?(:projects, [:name, :namespace_id], {:unique=>true, :name=>"unique_projects_on_name_namespace_id", :algorithm=>:concurrently})723main: -> 0.0210s724main: -- add_index(:projects, [:name, :namespace_id], {:unique=>true, :name=>"unique_projects_on_name_namespace_id", :algorithm=>:concurrently})725main: -> 0.0022s726main: == 20220325160153 CreateUniqueIndexOnProjectsNameAndNamespaceId: migrated (0.0300s) 727main: == 20220326161803 AddCascadeDeleteFkOnProjectNamespaceId: migrating ===========728main: -- transaction_open?()729main: -> 0.0000s730main: -- foreign_keys(:projects)731main: -> 0.0023s732main: -- transaction_open?()733main: -> 0.0000s734main: -- execute("ALTER TABLE projects\nADD CONSTRAINT fk_6ca23af0a3\nFOREIGN KEY (project_namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")735main: -> 0.0015s736main: -- execute("ALTER TABLE projects VALIDATE CONSTRAINT fk_6ca23af0a3;")737main: -> 0.0016s738main: -- transaction_open?()739main: -> 0.0000s740main: -- foreign_keys(:projects)741main: -> 0.0021s742main: -- remove_foreign_key(:projects, {:column=>:project_namespace_id, :name=>"fk_71625606ac"})743main: -> 0.0032s744main: == 20220326161803 AddCascadeDeleteFkOnProjectNamespaceId: migrated (0.0159s) ==745main: == 20220326163653 AddNotNullContraintToProjectNamespaceId: migrating ==========746main: -- current_schema()747main: -> 0.0004s748main: -- transaction_open?()749main: -> 0.0000s750main: -- current_schema()751main: -> 0.0004s752main: -- transaction_open?()753main: -> 0.0000s754main: -- execute("ALTER TABLE projects\nADD CONSTRAINT check_fa75869cb1\nCHECK ( project_namespace_id IS NOT NULL )\nNOT VALID;\n")755main: -> 0.0011s756main: == 20220326163653 AddNotNullContraintToProjectNamespaceId: migrated (0.0081s) =757main: == 20220328095848 DeleteFailedResetDuplicateCiRunnersTokenMigrationRecords: migrating 758main: == 20220328095848 DeleteFailedResetDuplicateCiRunnersTokenMigrationRecords: migrated (0.0025s) 759main: == 20220328100456 Schedule20220328ResetDuplicateCiRunnersTokenEncryptedValuesOnProjects: migrating 760main: -- transaction_open?()761main: -> 0.0000s762main: -- Scheduled 0 ResetDuplicateCiRunnersTokenEncryptedValuesOnProjects jobs with a maximum of 2000 records per batch and an interval of 120 seconds.763The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:24 UTC."764main: == 20220328100456 Schedule20220328ResetDuplicateCiRunnersTokenEncryptedValuesOnProjects: migrated (0.0048s) 765main: == 20220328100457 Schedule20220328ResetDuplicateCiRunnersTokenValuesOnProjects: migrating 766main: -- transaction_open?()767main: -> 0.0000s768main: -- Scheduled 0 ResetDuplicateCiRunnersTokenValuesOnProjects jobs with a maximum of 2000 records per batch and an interval of 120 seconds.769The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:24 UTC."770main: == 20220328100457 Schedule20220328ResetDuplicateCiRunnersTokenValuesOnProjects: migrated (0.0042s) 771main: == 20220329061545 AddRepositorySizeToPlanLimits: migrating ====================772main: -- add_column(:plan_limits, :repository_size, :bigint, {:default=>0, :null=>false})773main: -> 0.0019s774main: == 20220329061545 AddRepositorySizeToPlanLimits: migrated (0.0020s) ===========775main: == 20220329092245 AddPasswordCharsRequirementToApplicationSettings: migrating =776main: -- add_column(:application_settings, :password_uppercase_required, :boolean, {:default=>false, :null=>false})777main: -> 0.0035s778main: -- add_column(:application_settings, :password_lowercase_required, :boolean, {:default=>false, :null=>false})779main: -> 0.0020s780main: -- add_column(:application_settings, :password_number_required, :boolean, {:default=>false, :null=>false})781main: -> 0.0018s782main: -- add_column(:application_settings, :password_symbol_required, :boolean, {:default=>false, :null=>false})783main: -> 0.0017s784main: == 20220329092245 AddPasswordCharsRequirementToApplicationSettings: migrated (0.0094s) 785main: == 20220329095632 AddThemeToBroadcastMessage: migrating =======================786main: -- add_column(:broadcast_messages, :theme, :smallint, {:null=>false, :default=>0})787main: -> 0.0015s788main: == 20220329095632 AddThemeToBroadcastMessage: migrated (0.0015s) ==============789main: == 20220329110630 AddCiNamespaceMirrorsUnnestIndexOnTraversalIds: migrating ===790main: -- indexes(:ci_namespace_mirrors)791main: -> 0.0021s792main: -- current_schema()793main: -> 0.0003s794main: -- execute(" CREATE INDEX CONCURRENTLY index_ci_namespace_mirrors_on_traversal_ids_unnest ON ci_namespace_mirrors\n USING btree ((traversal_ids[1]), (traversal_ids[2]), (traversal_ids[3]), (traversal_ids[4]))\n INCLUDE (traversal_ids, namespace_id)\n")795main: -> 0.0013s796main: == 20220329110630 AddCiNamespaceMirrorsUnnestIndexOnTraversalIds: migrated (0.0054s) 797main: == 20220329130330 AddAuthorToCiSubscriptionsProjects: migrating ===============798main: -- column_exists?(:ci_subscriptions_projects, :author_id)799main: -> 0.0021s800main: -- add_column(:ci_subscriptions_projects, :author_id, :bigint)801main: -> 0.0009s802main: -- transaction_open?()803main: -> 0.0000s804main: -- view_exists?(:postgres_partitions)805main: -> 0.0010s806main: -- index_exists?(:ci_subscriptions_projects, :author_id, {:name=>"index_ci_subscriptions_projects_author_id", :algorithm=>:concurrently})807main: -> 0.0030s808main: -- add_index(:ci_subscriptions_projects, :author_id, {:name=>"index_ci_subscriptions_projects_author_id", :algorithm=>:concurrently})809main: -> 0.0013s810main: == 20220329130330 AddAuthorToCiSubscriptionsProjects: migrated (0.0155s) ======811main: == 20220329175119 RemoveLeftoverCiJobArtifactDeletions: migrating =============812main: -- execute("DELETE FROM \"loose_foreign_keys_deleted_records\"\nWHERE\n(\"loose_foreign_keys_deleted_records\".\"partition\", \"loose_foreign_keys_deleted_records\".\"id\") IN (\n SELECT \"loose_foreign_keys_deleted_records\".\"partition\", \"loose_foreign_keys_deleted_records\".\"id\"\n FROM \"loose_foreign_keys_deleted_records\"\n WHERE\n \"loose_foreign_keys_deleted_records\".\"fully_qualified_table_name\" = 'public.ci_job_artifacts' AND\n \"loose_foreign_keys_deleted_records\".\"status\" = 1\n LIMIT 100\n)\n")813main: -> 0.0008s814main: == 20220329175119 RemoveLeftoverCiJobArtifactDeletions: migrated (0.0010s) ====815main: == 20220331074722 AddNotesNullDiscussionIdTempIndexAsync: migrating ===========816main: -- index_exists?(:notes, :id, {:where=>"discussion_id IS NULL", :name=>"tmp_index_notes_on_id_where_discussion_id_is_null", :algorithm=>:concurrently})817main: -> 0.0048s818main: -- add_index_options(:notes, :id, {:where=>"discussion_id IS NULL", :name=>"tmp_index_notes_on_id_where_discussion_id_is_null", :algorithm=>:concurrently})819main: -> 0.0001s820main: == 20220331074722 AddNotesNullDiscussionIdTempIndexAsync: migrated (0.0094s) ==821main: == 20220331125725 AddTitleToTopic: migrating ==================================822main: -- add_column(:topics, :title, :text)823main: -> 0.0012s824main: == 20220331125725 AddTitleToTopic: migrated (0.0012s) =========================825main: == 20220331130726 AddTextLimitToTopicsTitle: migrating ========================826main: -- transaction_open?()827main: -> 0.0000s828main: -- current_schema()829main: -> 0.0004s830main: -- transaction_open?()831main: -> 0.0000s832main: -- execute("ALTER TABLE topics\nADD CONSTRAINT check_223b50f9be\nCHECK ( char_length(title) <= 255 )\nNOT VALID;\n")833main: -> 0.0007s834main: -- current_schema()835main: -> 0.0003s836main: -- execute("ALTER TABLE topics VALIDATE CONSTRAINT check_223b50f9be;")837main: -> 0.0006s838main: == 20220331130726 AddTextLimitToTopicsTitle: migrated (0.0066s) ===============839main: == 20220331133802 ScheduleBackfillTopicsTitle: migrating ======================840main: -- transaction_open?()841main: -> 0.0000s842main: -- Scheduled 0 BackfillTopicsTitle jobs with a maximum of 1000 records per batch and an interval of 120 seconds.843The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:24 UTC."844main: == 20220331133802 ScheduleBackfillTopicsTitle: migrated (0.0021s) =============845main: == 20220331174026 AddSubmitFieldToDastSiteProfiles: migrating =================846main: -- add_column(:dast_site_profiles, :auth_submit_field, :text)847main: -> 0.0011s848main: == 20220331174026 AddSubmitFieldToDastSiteProfiles: migrated (0.0011s) ========849main: == 20220331174459 AddTextLimitToSubmitFieldDastSiteProfiles: migrating ========850main: -- transaction_open?()851main: -> 0.0000s852main: -- current_schema()853main: -> 0.0004s854main: -- transaction_open?()855main: -> 0.0000s856main: -- execute("ALTER TABLE dast_site_profiles\nADD CONSTRAINT check_af44f54c96\nCHECK ( char_length(auth_submit_field) <= 255 )\nNOT VALID;\n")857main: -> 0.0008s858main: -- current_schema()859main: -> 0.0003s860main: -- execute("ALTER TABLE dast_site_profiles VALIDATE CONSTRAINT check_af44f54c96;")861main: -> 0.0006s862main: == 20220331174459 AddTextLimitToSubmitFieldDastSiteProfiles: migrated (0.0068s) 863main: == 20220401044858 AddUserIdAndStateIndexToMergeRequestAssignees: migrating ====864main: -- transaction_open?()865main: -> 0.0000s866main: -- view_exists?(:postgres_partitions)867main: -> 0.0006s868main: -- index_exists?(:merge_request_assignees, [:user_id, :state], {:where=>"state = 2", :name=>"index_on_merge_request_assignees_user_id_and_state", :algorithm=>:concurrently})869main: -> 0.0029s870main: -- add_index(:merge_request_assignees, [:user_id, :state], {:where=>"state = 2", :name=>"index_on_merge_request_assignees_user_id_and_state", :algorithm=>:concurrently})871main: -> 0.0012s872main: == 20220401044858 AddUserIdAndStateIndexToMergeRequestAssignees: migrated (0.0104s) 873main: == 20220401045116 AddUserIdAndStateIndexToMergeRequestReviewers: migrating ====874main: -- transaction_open?()875main: -> 0.0000s876main: -- view_exists?(:postgres_partitions)877main: -> 0.0006s878main: -- index_exists?(:merge_request_reviewers, [:user_id, :state], {:where=>"state = 2", :name=>"index_on_merge_request_reviewers_user_id_and_state", :algorithm=>:concurrently})879main: -> 0.0025s880main: -- add_index(:merge_request_reviewers, [:user_id, :state], {:where=>"state = 2", :name=>"index_on_merge_request_reviewers_user_id_and_state", :algorithm=>:concurrently})881main: -> 0.0011s882main: == 20220401045116 AddUserIdAndStateIndexToMergeRequestReviewers: migrated (0.0099s) 883main: == 20220401045621 RemoveStateIndexOnMergeRequestAssignees: migrating ==========884main: -- transaction_open?()885main: -> 0.0000s886main: -- view_exists?(:postgres_partitions)887main: -> 0.0006s888main: -- indexes(:merge_request_assignees)889main: -> 0.0031s890main: -- remove_index(:merge_request_assignees, {:algorithm=>:concurrently, :name=>"index_on_merge_request_assignees_state"})891main: -> 0.0010s892main: == 20220401045621 RemoveStateIndexOnMergeRequestAssignees: migrated (0.0096s) =893main: == 20220401045642 RemoveStateIndexOnMergeRequestReviewers: migrating ==========894main: -- transaction_open?()895main: -> 0.0000s896main: -- view_exists?(:postgres_partitions)897main: -> 0.0006s898main: -- indexes(:merge_request_reviewers)899main: -> 0.0030s900main: -- remove_index(:merge_request_reviewers, {:algorithm=>:concurrently, :name=>"index_on_merge_request_reviewers_state"})901main: -> 0.0010s902main: == 20220401045642 RemoveStateIndexOnMergeRequestReviewers: migrated (0.0100s) =903main: == 20220401071609 AddCampaignToInProductMarketingEmail: migrating =============904main: -- change_column_null(:in_product_marketing_emails, :track, true)905main: -> 0.0006s906main: -- change_column_null(:in_product_marketing_emails, :series, true)907main: -> 0.0005s908main: -- add_column(:in_product_marketing_emails, :campaign, :text, {:if_not_exists=>true})909main: -> 0.0022s910main: -- transaction_open?()911main: -> 0.0000s912main: -- view_exists?(:postgres_partitions)913main: -> 0.0006s914main: -- index_exists?(:in_product_marketing_emails, [:user_id, :campaign], {:unique=>true, :name=>:index_in_product_marketing_emails_on_user_campaign, :algorithm=>:concurrently})915main: -> 0.0018s916main: -- add_index(:in_product_marketing_emails, [:user_id, :campaign], {:unique=>true, :name=>:index_in_product_marketing_emails_on_user_campaign, :algorithm=>:concurrently})917main: -> 0.0012s918main: -- transaction_open?()919main: -> 0.0000s920main: -- current_schema()921main: -> 0.0004s922main: -- transaction_open?()923main: -> 0.0000s924main: -- execute("ALTER TABLE in_product_marketing_emails\nADD CONSTRAINT in_product_marketing_emails_track_and_series_or_campaign\nCHECK ( (track IS NOT NULL AND series IS NOT NULL AND campaign IS NULL) OR (track IS NULL AND series IS NULL AND campaign IS NOT NULL) )\nNOT VALID;\n")925main: -> 0.0006s926main: -- current_schema()927main: -> 0.0003s928main: -- execute("ALTER TABLE in_product_marketing_emails VALIDATE CONSTRAINT in_product_marketing_emails_track_and_series_or_campaign;")929main: -> 0.0006s930main: == 20220401071609 AddCampaignToInProductMarketingEmail: migrated (0.0188s) ====931main: == 20220401110443 AddOnHoldUntilColumnForBatchedMigration: migrating ==========932main: -- add_column(:batched_background_migrations, :on_hold_until, :timestamptz, {:comment=>"execution of this migration is on hold until this time"})933main: -> 0.0015s934main: == 20220401110443 AddOnHoldUntilColumnForBatchedMigration: migrated (0.0015s) =935main: == 20220401110511 AddRuntimeDataColumnsToVsaAggregations: migrating ===========936main: -- change_table(:analytics_cycle_analytics_aggregations, {:bulk=>true})937main: -> 0.0023s938main: == 20220401110511 AddRuntimeDataColumnsToVsaAggregations: migrated (0.0023s) ==939main: == 20220401113123 AddCheckConstraintToVsaAggregationRuntimeDataColumns: migrating 940main: -- transaction_open?()941main: -> 0.0000s942main: -- current_schema()943main: -> 0.0004s944main: -- transaction_open?()945main: -> 0.0000s946main: -- execute("ALTER TABLE analytics_cycle_analytics_aggregations\nADD CONSTRAINT full_runtimes_in_seconds_size\nCHECK ( CARDINALITY(full_runtimes_in_seconds) <= 10 )\nNOT VALID;\n")947main: -> 0.0008s948main: -- current_schema()949main: -> 0.0003s950main: -- execute("ALTER TABLE analytics_cycle_analytics_aggregations VALIDATE CONSTRAINT full_runtimes_in_seconds_size;")951main: -> 0.0006s952main: -- transaction_open?()953main: -> 0.0000s954main: -- current_schema()955main: -> 0.0003s956main: -- transaction_open?()957main: -> 0.0000s958main: -- execute("ALTER TABLE analytics_cycle_analytics_aggregations\nADD CONSTRAINT full_processed_records_size\nCHECK ( CARDINALITY(full_processed_records) <= 10 )\nNOT VALID;\n")959main: -> 0.0006s960main: -- current_schema()961main: -> 0.0003s962main: -- execute("ALTER TABLE analytics_cycle_analytics_aggregations VALIDATE CONSTRAINT full_processed_records_size;")963main: -> 0.0006s964main: == 20220401113123 AddCheckConstraintToVsaAggregationRuntimeDataColumns: migrated (0.0124s) 965main: == 20220401151123 AddLastRepositoryUpdatedAtToProjectRepositoryState: migrating 966main: -- add_column(:project_repository_states, :last_repository_updated_at, :datetime_with_timezone)967main: -> 0.0010s968main: -- add_column(:project_repository_states, :last_wiki_updated_at, :datetime_with_timezone)969main: -> 0.0006s970main: == 20220401151123 AddLastRepositoryUpdatedAtToProjectRepositoryState: migrated (0.0017s) 971main: == 20220404114106 AddContainerRegistrySizeToProjectStatistics: migrating ======972main: -- add_column(:project_statistics, :container_registry_size, :bigint, {:default=>0, :null=>false})973main: -> 0.0021s974main: == 20220404114106 AddContainerRegistrySizeToProjectStatistics: migrated (0.0021s) 975main: == 20220404170446 AddIndexForNonRequestedNonInvitedAwaitingMembers: migrating =976main: -- transaction_open?()977main: -> 0.0000s978main: -- view_exists?(:postgres_partitions)979main: -> 0.0006s980main: -- index_exists?(:members, :source_id, {:where=>"((requested_at IS NULL) AND (invite_token IS NULL) AND (access_level > 5) AND (state = 1))", :name=>"index_members_on_non_requested_non_invited_and_state_awaiting", :algorithm=>:concurrently})981main: -> 0.0058s982main: -- add_index(:members, :source_id, {:where=>"((requested_at IS NULL) AND (invite_token IS NULL) AND (access_level > 5) AND (state = 1))", :name=>"index_members_on_non_requested_non_invited_and_state_awaiting", :algorithm=>:concurrently})983main: -> 0.0013s984main: == 20220404170446 AddIndexForNonRequestedNonInvitedAwaitingMembers: migrated (0.0130s) 985main: == 20220404183350 AddForbiddenStateIndexToUsers: migrating ====================986main: -- transaction_open?()987main: -> 0.0000s988main: -- view_exists?(:postgres_partitions)989main: -> 0.0005s990main: -- index_exists?(:users, :id, {:name=>"users_forbidden_state_idx", :where=>"confirmed_at IS NOT NULL AND (state <> ALL (ARRAY['blocked', 'banned', 'ldap_blocked']))", :algorithm=>:concurrently})991main: -> 0.0105s992main: -- add_index(:users, :id, {:name=>"users_forbidden_state_idx", :where=>"confirmed_at IS NOT NULL AND (state <> ALL (ARRAY['blocked', 'banned', 'ldap_blocked']))", :algorithm=>:concurrently})993main: -> 0.0018s994main: == 20220404183350 AddForbiddenStateIndexToUsers: migrated (0.0179s) ===========995main: == 20220404184814 DropBroaderExpiredArtifactIndex: migrating ==================996main: -- transaction_open?()997main: -> 0.0000s998main: -- view_exists?(:postgres_partitions)999main: -> 0.0005s1000main: -- indexes("ci_job_artifacts")1001main: -> 0.0057s1002main: -- remove_index("ci_job_artifacts", {:algorithm=>:concurrently, :name=>"ci_job_artifacts_expire_at_unlocked_idx"})1003main: -> 0.0010s1004main: == 20220404184814 DropBroaderExpiredArtifactIndex: migrated (0.0122s) =========1005main: == 20220404194649 ReplaceWorkItemTypeBackfillNextBatchStrategy: migrating =====1006main: == 20220404194649 ReplaceWorkItemTypeBackfillNextBatchStrategy: migrated (0.0000s) 1007main: == 20220405061122 AddLicenseScanningActionToOnboardingProgresses: migrating ===1008main: -- add_column(:onboarding_progresses, :license_scanning_run_at, :datetime_with_timezone)1009main: -> 0.0010s1010main: == 20220405061122 AddLicenseScanningActionToOnboardingProgresses: migrated (0.0010s) 1011main: == 20220405092619 ToggleVsaAggregationsEnable: migrating ======================1012main: == 20220405092619 ToggleVsaAggregationsEnable: migrated (0.0163s) =============1013main: == 20220405125459 AddNonMigratedIndexToContainerRepositories: migrating =======1014main: -- transaction_open?()1015main: -> 0.0000s1016main: -- view_exists?(:postgres_partitions)1017main: -> 0.0006s1018main: -- index_exists?(:container_repositories, [:project_id, :id], {:name=>"tmp_idx_container_repos_on_non_migrated", :where=>"migration_state != 'import_done' AND created_at < '2022-01-23'", :algorithm=>:concurrently})1019main: -> 0.0050s1020main: -- add_index(:container_repositories, [:project_id, :id], {:name=>"tmp_idx_container_repos_on_non_migrated", :where=>"migration_state != 'import_done' AND created_at < '2022-01-23'", :algorithm=>:concurrently})1021main: -> 0.0016s1022main: == 20220405125459 AddNonMigratedIndexToContainerRepositories: migrated (0.0133s) 1023main: == 20220405181814 AddArkoseSettingsToApplicationSettings: migrating ===========1024main: -- add_column(:application_settings, :encrypted_arkose_labs_public_api_key, :binary)1025main: -> 0.0016s1026main: -- add_column(:application_settings, :encrypted_arkose_labs_public_api_key_iv, :binary)1027main: -> 0.0008s1028main: -- add_column(:application_settings, :encrypted_arkose_labs_private_api_key, :binary)1029main: -> 0.0009s1030main: -- add_column(:application_settings, :encrypted_arkose_labs_private_api_key_iv, :binary)1031main: -> 0.0009s1032main: -- add_column(:application_settings, :arkose_labs_verify_api_url, :text)1033main: -> 0.0009s1034main: == 20220405181814 AddArkoseSettingsToApplicationSettings: migrated (0.0054s) ==1035main: == 20220405203843 AddTextLimitToArkoseVerifyUrlApplicationSettings: migrating =1036main: -- transaction_open?()1037main: -> 0.0000s1038main: -- current_schema()1039main: -> 0.0004s1040main: -- transaction_open?()1041main: -> 0.0000s1042main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_f6563bc000\nCHECK ( char_length(arkose_labs_verify_api_url) <= 255 )\nNOT VALID;\n")1043main: -> 0.0012s1044main: -- current_schema()1045main: -> 0.0003s1046main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_f6563bc000;")1047main: -> 0.0010s1048main: == 20220405203843 AddTextLimitToArkoseVerifyUrlApplicationSettings: migrated (0.0075s) 1049main: == 20220406113217 AddInactiveProjectDeletionToApplicationSettings: migrating ==1050main: -- add_column(:application_settings, :delete_inactive_projects, :boolean, {:default=>false, :null=>false})1051main: -> 0.0020s1052main: -- add_column(:application_settings, :inactive_projects_delete_after_months, :integer, {:default=>2, :null=>false})1053main: -> 0.0013s1054main: -- add_column(:application_settings, :inactive_projects_min_size_mb, :integer, {:default=>0, :null=>false})1055main: -> 0.0014s1056main: -- add_column(:application_settings, :inactive_projects_send_warning_email_after_months, :integer, {:default=>1, :null=>false})1057main: -> 0.0014s1058main: == 20220406113217 AddInactiveProjectDeletionToApplicationSettings: migrated (0.0063s) 1059main: == 20220406121831 AddIndexOnStatusForBatchedBackgroundMigrations: migrating ===1060main: -- transaction_open?()1061main: -> 0.0000s1062main: -- view_exists?(:postgres_partitions)1063main: -> 0.0006s1064main: -- index_exists?(:batched_background_migrations, :status, {:algorithm=>:concurrently})1065main: -> 0.0015s1066main: -- add_index(:batched_background_migrations, :status, {:algorithm=>:concurrently})1067main: -> 0.0012s1068main: -- index_name(:batched_background_migrations, :status)1069main: -> 0.0000s1070main: == 20220406121831 AddIndexOnStatusForBatchedBackgroundMigrations: migrated (0.0088s) 1071main: == 20220406133049 AddDelayedGroupDeletionToApplicationSettings: migrating =====1072main: -- add_column(:application_settings, :delayed_group_deletion, :boolean, {:default=>true, :null=>false})1073main: -> 0.0021s1074main: == 20220406133049 AddDelayedGroupDeletionToApplicationSettings: migrated (0.0022s) 1075main: == 20220406193806 AddMavenPackageRequestsForwardingToApplicationSettings: migrating 1076main: -- add_column(:application_settings, :maven_package_requests_forwarding, :boolean, {:default=>true, :null=>false})1077main: -> 0.0020s1078main: == 20220406193806 AddMavenPackageRequestsForwardingToApplicationSettings: migrated (0.0022s) 1079main: == 20220407135820 AddEpicsRelativePosition: migrating =========================1080main: -- table_exists?(:epics)1081main: -> 0.0009s1082main: -- column_exists?(:epics, :relative_position)1083main: -> 0.0021s1084main: == 20220407135820 AddEpicsRelativePosition: migrated (0.0031s) ================1085main: == 20220407163559 SchedulePurgingStaleSecurityScans: migrating ================1086main: -- transaction_open?()1087main: -> 0.0000s1088main: -- Scheduled 0 PurgeStaleSecurityScans jobs with a maximum of 10000 records per batch and an interval of 120 seconds.1089The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:25 UTC."1090main: == 20220407163559 SchedulePurgingStaleSecurityScans: migrated (0.0087s) =======1091main: == 20220408001450 AddWorkItemTypeNameUniqueIndexNullNamespaces: migrating =====1092main: -- transaction_open?()1093main: -> 0.0000s1094main: -- view_exists?(:postgres_partitions)1095main: -> 0.0007s1096main: -- index_exists?(:work_item_types, "TRIM(BOTH FROM LOWER(name)), (namespace_id IS NULL)", {:unique=>true, :name=>:idx_work_item_types_on_namespace_id_and_name_null_namespace, :where=>"namespace_id IS NULL", :algorithm=>:concurrently})1097main: -> 0.0012s1098main: -- add_index(:work_item_types, "TRIM(BOTH FROM LOWER(name)), (namespace_id IS NULL)", {:unique=>true, :name=>:idx_work_item_types_on_namespace_id_and_name_null_namespace, :where=>"namespace_id IS NULL", :algorithm=>:concurrently})1099main: -> 0.0013s1100main: == 20220408001450 AddWorkItemTypeNameUniqueIndexNullNamespaces: migrated (0.0085s) 1101main: == 20220408135815 UpdateIndexOnGreatedDoneAtOnContainerRepositories: migrating 1102main: -- transaction_open?()1103main: -> 0.0000s1104main: -- view_exists?(:postgres_partitions)1105main: -> 0.0006s1106main: -- index_exists?(:container_repositories, "GREATEST(migration_pre_import_done_at, migration_import_done_at, migration_aborted_at, migration_skipped_at)", {:where=>"migration_state IN ('import_done', 'pre_import_done', 'import_aborted', 'import_skipped')", :name=>"index_container_repositories_on_greatest_completed_at", :algorithm=>:concurrently})1107main: -> 0.0052s1108main: -- add_index(:container_repositories, "GREATEST(migration_pre_import_done_at, migration_import_done_at, migration_aborted_at, migration_skipped_at)", {:where=>"migration_state IN ('import_done', 'pre_import_done', 'import_aborted', 'import_skipped')", :name=>"index_container_repositories_on_greatest_completed_at", :algorithm=>:concurrently})1109main: -> 0.0014s1110main: -- transaction_open?()1111main: -> 0.0000s1112main: -- view_exists?(:postgres_partitions)1113main: -> 0.0005s1114main: -- indexes(:container_repositories)1115main: -> 0.0055s1116main: -- remove_index(:container_repositories, {:algorithm=>:concurrently, :name=>"index_container_repositories_on_greatest_done_at"})1117main: -> 0.0012s1118main: == 20220408135815 UpdateIndexOnGreatedDoneAtOnContainerRepositories: migrated (0.0248s) 1119main: == 20220409160628 AddAsyncIndexForEventsFollowedUsers: migrating ==============1120main: -- index_exists?(:events, [:author_id, :target_type, :action, :id], {:name=>"index_events_for_followed_users", :algorithm=>:concurrently})1121main: -> 0.0052s1122main: -- add_index_options(:events, [:author_id, :target_type, :action, :id], {:name=>"index_events_for_followed_users", :algorithm=>:concurrently})1123main: -> 0.0001s1124main: == 20220409160628 AddAsyncIndexForEventsFollowedUsers: migrated (0.0099s) =====1125main: == 20220411173544 CleanupOrphansApprovalProjectRules: migrating ===============1126main: == 20220411173544 CleanupOrphansApprovalProjectRules: migrated (0.0170s) ======1127main: == 20220412044906 FinalizeTraversalIdsBackgroundMigrations: migrating =========1128main: -- transaction_open?()1129main: -> 0.0000s1130main: -- transaction_open?()1131main: -> 0.0000s1132main: == 20220412044906 FinalizeTraversalIdsBackgroundMigrations: migrated (0.0085s) 1133main: == 20220412060931 AddNullifyBuildDataTriggerOnMergeRequestMetrics: migrating ==1134main: -- execute("CREATE OR REPLACE FUNCTION nullify_merge_request_metrics_build_data()\nRETURNS TRIGGER AS\n$$\nBEGIN\nIF (OLD.pipeline_id IS NOT NULL) AND (NEW.pipeline_id IS NULL) THEN\n NEW.latest_build_started_at = NULL;\n NEW.latest_build_finished_at = NULL;\nEND IF;\nRETURN NEW;\n\nEND\n$$ LANGUAGE PLPGSQL\n")1135main: -> 0.0011s1136main: -- execute("CREATE TRIGGER nullify_merge_request_metrics_build_data_on_update\nBEFORE UPDATE ON merge_request_metrics\nFOR EACH ROW\n\nEXECUTE FUNCTION nullify_merge_request_metrics_build_data()\n")1137main: -> 0.0006s1138main: == 20220412060931 AddNullifyBuildDataTriggerOnMergeRequestMetrics: migrated (0.0018s) 1139main: == 20220412135446 AddUniqueFingerprintSha256IndexToKey: migrating =============1140main: -- transaction_open?()1141main: -> 0.0000s1142main: -- view_exists?(:postgres_partitions)1143main: -> 0.0006s1144main: -- index_exists?(:keys, :fingerprint_sha256, {:unique=>true, :name=>"index_keys_on_fingerprint_sha256_unique", :algorithm=>:concurrently})1145main: -> 0.0033s1146main: -- add_index(:keys, :fingerprint_sha256, {:unique=>true, :name=>"index_keys_on_fingerprint_sha256_unique", :algorithm=>:concurrently})1147main: -> 0.0013s1148main: -- transaction_open?()1149main: -> 0.0000s1150main: -- view_exists?(:postgres_partitions)1151main: -> 0.0005s1152main: -- indexes(:keys)1153main: -> 0.0036s1154main: -- remove_index(:keys, {:algorithm=>:concurrently, :name=>"index_keys_on_fingerprint_sha256"})1155main: -> 0.0010s1156main: == 20220412135446 AddUniqueFingerprintSha256IndexToKey: migrated (0.0202s) ====1157main: == 20220412140446 AddUniqueFingerprintSha256IndexToGroupDeployKey: migrating ==1158main: -- transaction_open?()1159main: -> 0.0000s1160main: -- view_exists?(:postgres_partitions)1161main: -> 0.0005s1162main: -- index_exists?(:group_deploy_keys, :fingerprint_sha256, {:unique=>true, :name=>"index_group_deploy_keys_on_fingerprint_sha256_unique", :algorithm=>:concurrently})1163main: -> 0.0023s1164main: -- add_index(:group_deploy_keys, :fingerprint_sha256, {:unique=>true, :name=>"index_group_deploy_keys_on_fingerprint_sha256_unique", :algorithm=>:concurrently})1165main: -> 0.0011s1166main: -- transaction_open?()1167main: -> 0.0000s1168main: -- view_exists?(:postgres_partitions)1169main: -> 0.0005s1170main: -- indexes(:group_deploy_keys)1171main: -> 0.0023s1172main: -- remove_index(:group_deploy_keys, {:algorithm=>:concurrently, :name=>"index_group_deploy_keys_on_fingerprint_sha256"})1173main: -> 0.0010s1174main: == 20220412140446 AddUniqueFingerprintSha256IndexToGroupDeployKey: migrated (0.0176s) 1175main: == 20220412140755 DropUniqueFingerprintMd5IndexFromKey: migrating =============1176main: -- transaction_open?()1177main: -> 0.0000s1178main: -- view_exists?(:postgres_partitions)1179main: -> 0.0005s1180main: -- indexes(:keys)1181main: -> 0.0033s1182main: -- remove_index(:keys, {:algorithm=>:concurrently, :name=>"index_keys_on_fingerprint"})1183main: -> 0.0009s1184main: -- transaction_open?()1185main: -> 0.0000s1186main: -- view_exists?(:postgres_partitions)1187main: -> 0.0005s1188main: -- index_exists?(:keys, :fingerprint, {:name=>"index_keys_on_fingerprint", :algorithm=>:concurrently})1189main: -> 0.0027s1190main: -- add_index(:keys, :fingerprint, {:name=>"index_keys_on_fingerprint", :algorithm=>:concurrently})1191main: -> 0.0010s1192main: == 20220412140755 DropUniqueFingerprintMd5IndexFromKey: migrated (0.0184s) ====1193main: == 20220412141020 DropUniqueFingerprintMd5IndexFromGroupDeployKey: migrating ==1194main: -- transaction_open?()1195main: -> 0.0000s1196main: -- view_exists?(:postgres_partitions)1197main: -> 0.0005s1198main: -- indexes(:group_deploy_keys)1199main: -> 0.0021s1200main: -- remove_index(:group_deploy_keys, {:algorithm=>:concurrently, :name=>"index_group_deploy_keys_on_fingerprint"})1201main: -> 0.0008s1202main: -- transaction_open?()1203main: -> 0.0000s1204main: -- view_exists?(:postgres_partitions)1205main: -> 0.0005s1206main: -- index_exists?(:group_deploy_keys, :fingerprint, {:name=>"index_group_deploy_keys_on_fingerprint", :algorithm=>:concurrently})1207main: -> 0.0016s1208main: -- add_index(:group_deploy_keys, :fingerprint, {:name=>"index_group_deploy_keys_on_fingerprint", :algorithm=>:concurrently})1209main: -> 0.0010s1210main: == 20220412141020 DropUniqueFingerprintMd5IndexFromGroupDeployKey: migrated (0.0157s) 1211main: == 20220412143551 AddPartialIndexOnUnencryptedIntegrations: migrating =========1212main: -- transaction_open?()1213main: -> 0.0000s1214main: -- view_exists?(:postgres_partitions)1215main: -> 0.0005s1216main: -- index_exists?(:integrations, [:id], {:where=>"properties IS NOT NULL AND encrypted_properties IS NULL", :name=>"index_integrations_on_id_where_not_encrypted", :algorithm=>:concurrently})1217main: -> 0.0035s1218main: -- add_index(:integrations, [:id], {:where=>"properties IS NOT NULL AND encrypted_properties IS NULL", :name=>"index_integrations_on_id_where_not_encrypted", :algorithm=>:concurrently})1219main: -> 0.0011s1220main: == 20220412143551 AddPartialIndexOnUnencryptedIntegrations: migrated (0.0097s) 1221main: == 20220412143552 ConsumeRemainingEncryptIntegrationPropertyJobs: migrating ===1222main: == 20220412143552 ConsumeRemainingEncryptIntegrationPropertyJobs: migrated (0.0032s) 1223main: == 20220412171810 AddOtpSecretExpiresAt: migrating ============================1224main: -- add_column(:users, :otp_secret_expires_at, :datetime_with_timezone)1225main: -> 0.0010s1226main: == 20220412171810 AddOtpSecretExpiresAt: migrated (0.0010s) ===================1227main: == 20220413011328 RemovePartialIndexOnUnencryptedIntegrations: migrating ======1228main: -- transaction_open?()1229main: -> 0.0000s1230main: -- view_exists?(:postgres_partitions)1231main: -> 0.0006s1232main: -- indexes(:integrations)1233main: -> 0.0038s1234main: -- remove_index(:integrations, {:algorithm=>:concurrently, :name=>"index_integrations_on_id_where_not_encrypted"})1235main: -> 0.0011s1236main: == 20220413011328 RemovePartialIndexOnUnencryptedIntegrations: migrated (0.0104s) 1237main: == 20220413054910 BackfillDelayedGroupDeletion: migrating =====================1238main: == 20220413054910 BackfillDelayedGroupDeletion: migrated (0.1484s) ============1239main: == 20220413075921 UpdateIndexOnPackagesBuildInfos: migrating ==================1240main: -- transaction_open?()1241main: -> 0.0000s1242main: -- view_exists?(:postgres_partitions)1243main: -> 0.0009s1244main: -- index_exists?(:packages_build_infos, [:package_id, :pipeline_id, :id], {:name=>"index_packages_build_infos_package_id_pipeline_id_id", :algorithm=>:concurrently})1245main: -> 0.0020s1246main: -- add_index(:packages_build_infos, [:package_id, :pipeline_id, :id], {:name=>"index_packages_build_infos_package_id_pipeline_id_id", :algorithm=>:concurrently})1247main: -> 0.0013s1248main: -- transaction_open?()1249main: -> 0.0000s1250main: -- view_exists?(:postgres_partitions)1251main: -> 0.0005s1252main: -- indexes(:packages_build_infos)1253main: -> 0.0022s1254main: -- remove_index(:packages_build_infos, {:algorithm=>:concurrently, :name=>"index_packages_build_infos_package_id_pipeline_id"})1255main: -> 0.0010s1256main: == 20220413075921 UpdateIndexOnPackagesBuildInfos: migrated (0.0193s) =========1257main: == 20220413124200 AddViewForPerTableAutovacuumStatus: migrating ===============1258main: -- execute("DROP VIEW IF EXISTS postgres_autovacuum_activity;\nDROP FUNCTION IF EXISTS postgres_pg_stat_activity_autovacuum;\n\nCREATE FUNCTION postgres_pg_stat_activity_autovacuum() RETURNS SETOF pg_catalog.pg_stat_activity AS\n$$\n SELECT *\n FROM pg_stat_activity\n WHERE datname = current_database()\n AND state = 'active'\n AND backend_type = 'autovacuum worker'\n$$\nLANGUAGE sql\nVOLATILE\nSECURITY DEFINER\nSET search_path = 'pg_catalog', 'pg_temp';\n\nCREATE VIEW postgres_autovacuum_activity AS\n WITH processes as\n (\n SELECT query, query_start, (regexp_matches(query, '^autovacuum: VACUUM (w+).(w+)')) as matches\n FROM postgres_pg_stat_activity_autovacuum()\n WHERE query ~* '^autovacuum: VACUUM w+.w+'\n )\n SELECT matches[1] || '.' || matches[2] as table_identifier,\n matches[1] as schema,\n matches[2] as table,\n query_start as vacuum_start\n FROM processes;\n\nCOMMENT ON VIEW postgres_autovacuum_activity IS 'Contains information about PostgreSQL backends currently performing autovacuum operations on the tables indicated here.';\n")1259main: -> 0.0022s1260main: == 20220413124200 AddViewForPerTableAutovacuumStatus: migrated (0.0023s) ======1261main: == 20220413164146 RemoveMaxSeatsUsedIndices: migrating ========================1262main: -- transaction_open?()1263main: -> 0.0000s1264main: -- view_exists?(:postgres_partitions)1265main: -> 0.0012s1266main: -- indexes(:gitlab_subscriptions)1267main: -> 0.0053s1268main: -- remove_index(:gitlab_subscriptions, {:algorithm=>:concurrently, :name=>"tmp_gitlab_subscriptions_max_seats_used_migration"})1269main: -> 0.0012s1270main: -- transaction_open?()1271main: -> 0.0000s1272main: -- view_exists?(:postgres_partitions)1273main: -> 0.0009s1274main: -- indexes(:gitlab_subscriptions)1275main: -> 0.0044s1276main: -- remove_index(:gitlab_subscriptions, {:algorithm=>:concurrently, :name=>"tmp_gitlab_subscriptions_max_seats_used_migration_2"})1277main: -> 0.0014s1278main: == 20220413164146 RemoveMaxSeatsUsedIndices: migrated (0.0273s) ===============1279main: == 20220413235818 AddMaxSeatsUsedChangedAtToGitlabSubscriptions: migrating ====1280main: -- add_column(:gitlab_subscriptions, :max_seats_used_changed_at, :datetime_with_timezone)1281main: -> 0.0014s1282main: == 20220413235818 AddMaxSeatsUsedChangedAtToGitlabSubscriptions: migrated (0.0016s) 1283main: == 20220414203622 AddIndexForColumnsUserCustomAttribute: migrating ============1284main: -- transaction_open?()1285main: -> 0.0000s1286main: -- view_exists?(:postgres_partitions)1287main: -> 0.0010s1288main: -- index_exists?(:user_custom_attributes, [:key, :updated_at], {:name=>"index_key_updated_at_on_user_custom_attribute", :algorithm=>:concurrently})1289main: -> 0.0036s1290main: -- add_index(:user_custom_attributes, [:key, :updated_at], {:name=>"index_key_updated_at_on_user_custom_attribute", :algorithm=>:concurrently})1291main: -> 0.0015s1292main: == 20220414203622 AddIndexForColumnsUserCustomAttribute: migrated (0.0140s) ===1293main: == 20220415015143 ReplaceIterationsCadenceDateRangeConstraint: migrating ======1294main: -- execute("ALTER TABLE sprints\n DROP CONSTRAINT IF EXISTS iteration_start_and_due_date_iterations_cadence_id_constraint;\n\nALTER TABLE sprints\n ADD CONSTRAINT iteration_start_and_due_date_iterations_cadence_id_constraint\n EXCLUDE USING gist\n ( iterations_cadence_id WITH =,\n daterange(start_date, due_date, '[]') WITH &&\n )\n WHERE (group_id IS NOT NULL) DEFERRABLE INITIALLY DEFERRED;\n")1295main: -> 0.0020s1296main: == 20220415015143 ReplaceIterationsCadenceDateRangeConstraint: migrated (0.0022s) 1297main: == 20220415124802 RemoveJobArtifactDeprecatedGeoFields: migrating =============1298main: -- transaction_open?()1299main: -> 0.0000s1300main: -- remove_column(:geo_event_log, :job_artifact_deleted_event_id, :bigint)1301main: -> 0.0013s1302main: == 20220415124802 RemoveJobArtifactDeprecatedGeoFields: migrated (0.0044s) ====1303main: == 20220415124804 RemoveJobArtifactDeletedEventTable: migrating ===============1304main: -- drop_table(:geo_job_artifact_deleted_events)1305main: -> 0.0018s1306main: == 20220415124804 RemoveJobArtifactDeletedEventTable: migrated (0.0020s) ======1307main: == 20220418180958 RemoveIntegrationsProperties: migrating =====================1308main: -- remove_column(:integrations, :properties, :text)1309main: -> 0.0011s1310main: == 20220418180958 RemoveIntegrationsProperties: migrated (0.0013s) ============1311main: == 20220419223906 AddArkoseNamespaceToApplicationSettings: migrating ==========1312main: -- column_exists?(:application_settings, :arkose_labs_namespace)1313main: -> 0.1238s1314main: -- add_column(:application_settings, :arkose_labs_namespace, :text, {:default=>"client", :null=>false})1315main: -> 0.0028s1316main: -- transaction_open?()1317main: -> 0.0000s1318main: -- current_schema()1319main: -> 0.0005s1320main: -- transaction_open?()1321main: -> 0.0000s1322main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_7ccfe2764a\nCHECK ( char_length(arkose_labs_namespace) <= 255 )\nNOT VALID;\n")1323main: -> 0.0016s1324main: -- current_schema()1325main: -> 0.0005s1326main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_7ccfe2764a;")1327main: -> 0.0013s1328main: == 20220419223906 AddArkoseNamespaceToApplicationSettings: migrated (0.1376s) =1329main: == 20220420034519 AddTextLimitToInProductMarketingEmailCampaign: migrating ====1330main: -- transaction_open?()1331main: -> 0.0000s1332main: -- current_schema()1333main: -> 0.0006s1334main: -- transaction_open?()1335main: -> 0.0000s1336main: -- execute("ALTER TABLE in_product_marketing_emails\nADD CONSTRAINT check_9d8b29f74f\nCHECK ( char_length(campaign) <= 255 )\nNOT VALID;\n")1337main: -> 0.0008s1338main: -- current_schema()1339main: -> 0.0004s1340main: -- execute("ALTER TABLE in_product_marketing_emails VALIDATE CONSTRAINT check_9d8b29f74f;")1341main: -> 0.0007s1342main: == 20220420034519 AddTextLimitToInProductMarketingEmailCampaign: migrated (0.0089s) 1343main: == 20220420061439 AddNotesNullDiscussionIdTempIndex: migrating ================1344main: -- transaction_open?()1345main: -> 0.0000s1346main: -- view_exists?(:postgres_partitions)1347main: -> 0.0010s1348main: -- index_exists?(:notes, :id, {:where=>"discussion_id IS NULL", :name=>"tmp_index_notes_on_id_where_discussion_id_is_null", :algorithm=>:concurrently})1349main: -> 0.0088s1350main: -- add_index(:notes, :id, {:where=>"discussion_id IS NULL", :name=>"tmp_index_notes_on_id_where_discussion_id_is_null", :algorithm=>:concurrently})1351main: -> 0.0017s1352main: == 20220420061439 AddNotesNullDiscussionIdTempIndex: migrated (0.0218s) =======1353main: == 20220420061450 BackfillNullNoteDiscussionIds: migrating ====================1354main: -- transaction_open?()1355main: -> 0.0000s1356main: -- Scheduled 0 BackfillNoteDiscussionId jobs with a maximum of 10000 records per batch and an interval of 120 seconds.1357The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:25 UTC."1358main: == 20220420061450 BackfillNullNoteDiscussionIds: migrated (0.0038s) ===========1359main: == 20220420135245 FixBatchedBackgroundMigrationDefaultArguments: migrating ====1360main: -- change_column_default(:batched_background_migrations, :job_arguments, {:from=>"[]", :to=>[]})1361main: -> 0.0031s1362main: == 20220420135245 FixBatchedBackgroundMigrationDefaultArguments: migrated (0.0032s) 1363main: == 20220420135946 UpdateBatchedBackgroundMigrationArguments: migrating ========1364main: -- execute("UPDATE batched_background_migrations\nSET job_arguments = '[]'\nWHERE job_arguments = '\"[]\"';\n")1365main: -> 0.0012s1366main: == 20220420135946 UpdateBatchedBackgroundMigrationArguments: migrated (0.0013s) 1367main: == 20220420173247 AddGroupInheritanceTypeToPeAuthorizable: migrating ==========1368main: -- add_column(:protected_environment_deploy_access_levels, :group_inheritance_type, :smallint, {:default=>0, :limit=>2, :null=>false})1369main: -> 0.0024s1370main: -- add_column(:protected_environment_approval_rules, :group_inheritance_type, :smallint, {:default=>0, :limit=>2, :null=>false})1371main: -> 0.0013s1372main: == 20220420173247 AddGroupInheritanceTypeToPeAuthorizable: migrated (0.0041s) =1373main: == 20220420192542 AddIdForCleanupIndexPackagesPackageFiles: migrating =========1374main: -- transaction_open?()1375main: -> 0.0000s1376main: -- view_exists?(:postgres_partitions)1377main: -> 0.0012s1378main: -- index_exists?(:packages_package_files, :id, {:name=>"index_packages_package_files_on_id_for_cleanup", :where=>"status = 1", :algorithm=>:concurrently})1379main: -> 0.0082s1380main: -- add_index(:packages_package_files, :id, {:name=>"index_packages_package_files_on_id_for_cleanup", :where=>"status = 1", :algorithm=>:concurrently})1381main: -> 0.0019s1382main: == 20220420192542 AddIdForCleanupIndexPackagesPackageFiles: migrated (0.0203s) 1383main: == 20220420214703 ScheduleBackfillDraftStatusOnMergeRequestsCorrectedRegex: migrating 1384main: -- transaction_open?()1385main: -> 0.0000s1386main: -- view_exists?(:postgres_partitions)1387main: -> 0.0007s1388main: -- index_exists?(:merge_requests, :id, {:where=>"draft = false AND state_id = 1 AND ((title)::text ~* '^(\\[draft\\]|\\(draft\\)|draft:|draft|\\[WIP\\]|WIP:|WIP)'::text)", :name=>"tmp_index_merge_requests_draft_and_status", :algorithm=>:concurrently})1389main: -> 0.0141s1390main: -- add_index(:merge_requests, :id, {:where=>"draft = false AND state_id = 1 AND ((title)::text ~* '^(\\[draft\\]|\\(draft\\)|draft:|draft|\\[WIP\\]|WIP:|WIP)'::text)", :name=>"tmp_index_merge_requests_draft_and_status", :algorithm=>:concurrently})1391main: -> 0.0016s1392main: -- transaction_open?()1393main: -> 0.0000s1394main: -- Scheduled 0 BackfillDraftStatusOnMergeRequestsWithCorrectedRegex jobs with a maximum of 50 records per batch and an interval of 120 seconds.1395The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:25 UTC."1396main: == 20220420214703 ScheduleBackfillDraftStatusOnMergeRequestsCorrectedRegex: migrated (0.0298s) 1397main: == 20220421114418 MakeFingerprintNullableForGroupDeployKey: migrating =========1398main: -- change_column_null(:group_deploy_keys, :fingerprint, true)1399main: -> 0.0016s1400main: == 20220421114418 MakeFingerprintNullableForGroupDeployKey: migrated (0.0019s) 1401main: == 20220421141342 AddAllowedPlansToCiRunners: migrating =======================1402main: -- add_column(:ci_runners, :allowed_plans, :text, {:array=>true, :null=>false, :default=>[]})1403main: -> 0.0019s1404main: == 20220421141342 AddAllowedPlansToCiRunners: migrated (0.0020s) ==============1405main: == 20220421144758 ChangeDotenvPlanLimitsForOldPlans: migrating ================1406main: -- quote_column_name("dotenv_variables")1407main: -> 0.0000s1408main: -- quote("early_adopter")1409main: -> 0.0000s1410main: -- quote(50)1411main: -> 0.0000s1412main: -- execute("INSERT INTO plan_limits (plan_id, \"dotenv_variables\")\nSELECT id, '50' FROM plans WHERE name = 'early_adopter' LIMIT 1\nON CONFLICT (plan_id) DO UPDATE SET \"dotenv_variables\" = EXCLUDED.\"dotenv_variables\";\n")1413main: -> 0.0019s1414main: -- quote_column_name("dotenv_variables")1415main: -> 0.0000s1416main: -- quote("bronze")1417main: -> 0.0000s1418main: -- quote(50)1419main: -> 0.0000s1420main: -- execute("INSERT INTO plan_limits (plan_id, \"dotenv_variables\")\nSELECT id, '50' FROM plans WHERE name = 'bronze' LIMIT 1\nON CONFLICT (plan_id) DO UPDATE SET \"dotenv_variables\" = EXCLUDED.\"dotenv_variables\";\n")1421main: -> 0.0011s1422main: -- quote_column_name("dotenv_variables")1423main: -> 0.0000s1424main: -- quote("silver")1425main: -> 0.0000s1426main: -- quote(100)1427main: -> 0.0000s1428main: -- execute("INSERT INTO plan_limits (plan_id, \"dotenv_variables\")\nSELECT id, '100' FROM plans WHERE name = 'silver' LIMIT 1\nON CONFLICT (plan_id) DO UPDATE SET \"dotenv_variables\" = EXCLUDED.\"dotenv_variables\";\n")1429main: -> 0.0011s1430main: -- quote_column_name("dotenv_variables")1431main: -> 0.0000s1432main: -- quote("gold")1433main: -> 0.0000s1434main: -- quote(150)1435main: -> 0.0000s1436main: -- execute("INSERT INTO plan_limits (plan_id, \"dotenv_variables\")\nSELECT id, '150' FROM plans WHERE name = 'gold' LIMIT 1\nON CONFLICT (plan_id) DO UPDATE SET \"dotenv_variables\" = EXCLUDED.\"dotenv_variables\";\n")1437main: -> 0.0010s1438main: == 20220421144758 ChangeDotenvPlanLimitsForOldPlans: migrated (0.0066s) =======1439main: == 20220421180321 AddLastCleanupDeletedTagsCountToContainerRepository: migrating 1440main: -- add_column(:container_repositories, :last_cleanup_deleted_tags_count, :integer)1441main: -> 0.0016s1442main: == 20220421180321 AddLastCleanupDeletedTagsCountToContainerRepository: migrated (0.0018s) 1443main: == 20220422121443 AddAsyncIndexForGroupActivityEvents: migrating ==============1444main: -- index_exists?(:events, [:group_id, :target_type, :action, :id], {:name=>"index_events_for_group_activity", :where=>"group_id IS NOT NULL", :algorithm=>:concurrently})1445main: -> 0.0344s1446main: -- add_index_options(:events, [:group_id, :target_type, :action, :id], {:name=>"index_events_for_group_activity", :where=>"group_id IS NOT NULL", :algorithm=>:concurrently})1447main: -> 0.0001s1448main: == 20220422121443 AddAsyncIndexForGroupActivityEvents: migrated (0.0414s) =====1449main: == 20220422200633 FixViewForPerTableAutovacuumStatus: migrating ===============1450main: -- execute("DROP VIEW IF EXISTS postgres_autovacuum_activity;\nDROP FUNCTION IF EXISTS postgres_pg_stat_activity_autovacuum;\n\nCREATE FUNCTION postgres_pg_stat_activity_autovacuum() RETURNS TABLE(query text, query_start timestamptz) AS\n$$\n SELECT query, query_start\n FROM pg_stat_activity\n WHERE datname = current_database()\n AND state = 'active'\n AND backend_type = 'autovacuum worker'\n$$\nLANGUAGE sql\nVOLATILE\nSECURITY DEFINER\nSET search_path = 'pg_catalog', 'pg_temp';\n\nCREATE VIEW postgres_autovacuum_activity AS\n WITH processes as\n (\n SELECT query, query_start, (regexp_matches(query, '^autovacuum: VACUUM (w+).(w+)')) as matches\n FROM postgres_pg_stat_activity_autovacuum()\n WHERE query ~* '^autovacuum: VACUUM w+.w+'\n )\n SELECT matches[1] || '.' || matches[2] as table_identifier,\n matches[1] as schema,\n matches[2] as table,\n query_start as vacuum_start\n FROM processes;\n\nCOMMENT ON VIEW postgres_autovacuum_activity IS 'Contains information about PostgreSQL backends currently performing autovacuum operations on the tables indicated here.';\n")1451main: -> 0.0036s1452main: == 20220422200633 FixViewForPerTableAutovacuumStatus: migrated (0.0039s) ======1453main: == 20220422220507 RemoveTmpIndexSupportingLeakyRegexCleanup: migrating ========1454main: -- transaction_open?()1455main: -> 0.0000s1456main: -- view_exists?(:postgres_partitions)1457main: -> 0.0014s1458main: -- indexes(:merge_requests)1459main: -> 0.0247s1460main: -- remove_index(:merge_requests, {:algorithm=>:concurrently, :name=>"tmp_index_merge_requests_draft_and_status_leaky_regex"})1461main: -> 0.0013s1462main: == 20220422220507 RemoveTmpIndexSupportingLeakyRegexCleanup: migrated (0.0352s) 1463main: == 20220425111114 AddAsyncIndexForProjectActivityEvents: migrating ============1464main: -- index_exists?(:events, [:project_id, :target_type, :action, :id], {:name=>"index_events_for_project_activity", :algorithm=>:concurrently})1465main: -> 0.0092s1466main: -- add_index_options(:events, [:project_id, :target_type, :action, :id], {:name=>"index_events_for_project_activity", :algorithm=>:concurrently})1467main: -> 0.0000s1468main: == 20220425111114 AddAsyncIndexForProjectActivityEvents: migrated (0.0153s) ===1469main: == 20220425111453 AddAsyncIndexToEventsOnGroupIdAndId: migrating ==============1470main: -- index_exists?(:events, [:group_id, :id], {:name=>"index_events_on_group_id_and_id", :where=>"group_id IS NOT NULL", :algorithm=>:concurrently})1471main: -> 0.0099s1472main: -- add_index_options(:events, [:group_id, :id], {:name=>"index_events_on_group_id_and_id", :where=>"group_id IS NOT NULL", :algorithm=>:concurrently})1473main: -> 0.0001s1474main: == 20220425111453 AddAsyncIndexToEventsOnGroupIdAndId: migrated (0.0165s) =====1475main: == 20220425120604 CreatePackagesCleanupPolicies: migrating ====================1476main: -- create_table(:packages_cleanup_policies, {:id=>false})1477main: -- quote_column_name(:keep_n_duplicated_package_files)1478main: -> 0.0000s1479main: -> 0.0040s1480main: == 20220425120604 CreatePackagesCleanupPolicies: migrated (0.0043s) ===========1481main: == 20220425121410 AddTemporaryIndexForBackfillIntegrationsEnableSslVerification: migrating 1482main: -- transaction_open?()1483main: -> 0.0000s1484main: -- view_exists?(:postgres_partitions)1485main: -> 0.0011s1486main: -- index_exists?(:integrations, :id, {:where=>"type_new IN ('Integrations::DroneCi', 'Integrations::Teamcity') AND encrypted_properties IS NOT NULL", :name=>"tmp_index_integrations_on_id_where_type_droneci_or_teamcity", :algorithm=>:concurrently})1487main: -> 0.0063s1488main: -- add_index(:integrations, :id, {:where=>"type_new IN ('Integrations::DroneCi', 'Integrations::Teamcity') AND encrypted_properties IS NOT NULL", :name=>"tmp_index_integrations_on_id_where_type_droneci_or_teamcity", :algorithm=>:concurrently})1489main: -> 0.0018s1490main: == 20220425121410 AddTemporaryIndexForBackfillIntegrationsEnableSslVerification: migrated (0.0169s) 1491main: == 20220425121435 BackfillIntegrationsEnableSslVerification: migrating ========1492main: -- transaction_open?()1493main: -> 0.0000s1494main: -- Scheduled 0 BackfillIntegrationsEnableSslVerification jobs with a maximum of 1000 records per batch and an interval of 300 seconds.1495The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:26 UTC."1496main: == 20220425121435 BackfillIntegrationsEnableSslVerification: migrated (0.0037s) 1497main: == 20220426130217 AddMaxExportSizeToApplicationSettings: migrating ============1498main: -- add_column(:application_settings, :max_export_size, :integer, {:default=>0})1499main: -> 0.0029s1500main: == 20220426130217 AddMaxExportSizeToApplicationSettings: migrated (0.0031s) ===1501main: == 20220426185933 BackfillDeploymentsFinishedAt: migrating ====================1502main: == 20220426185933 BackfillDeploymentsFinishedAt: migrated (0.0155s) ===========1503main: == 20220428133724 ScheduleExpireOAuthTokens: migrating ========================1504main: == 20220428133724 ScheduleExpireOAuthTokens: migrated (0.0001s) ===============1505main: == 20220502015011 CleanUpFixMergeRequestDiffCommitUsers: migrating ============1506main: -- transaction_open?()1507main: -> 0.0000s1508main: == 20220502015011 CleanUpFixMergeRequestDiffCommitUsers: migrated (0.0056s) ===1509main: == 20220502125053 RecreateIndexForProjectGroupLinkWithGroupIdAndProjectId: migrating 1510main: -- transaction_open?()1511main: -> 0.0000s1512main: -- view_exists?(:postgres_partitions)1513main: -> 0.0011s1514main: -- index_exists?(:project_group_links, [:group_id, :project_id], {:name=>"index_project_group_links_on_group_id_and_project_id", :algorithm=>:concurrently})1515main: -> 0.0033s1516main: -- add_index(:project_group_links, [:group_id, :project_id], {:name=>"index_project_group_links_on_group_id_and_project_id", :algorithm=>:concurrently})1517main: -> 0.0014s1518main: -- transaction_open?()1519main: -> 0.0000s1520main: -- view_exists?(:postgres_partitions)1521main: -> 0.0009s1522main: -- indexes(:project_group_links)1523main: -> 0.0033s1524main: -- remove_index(:project_group_links, {:algorithm=>:concurrently, :name=>"index_project_group_links_on_group_id"})1525main: -> 0.0011s1526main: == 20220502125053 RecreateIndexForProjectGroupLinkWithGroupIdAndProjectId: migrated (0.0245s) 1527main: == 20220502150408 AddSlackIntegrationsBotColumns: migrating ===================1528main: -- change_table(:slack_integrations)1529main: -> 0.0023s1530main: == 20220502150408 AddSlackIntegrationsBotColumns: migrated (0.0026s) ==========1531main: == 20220502152633 AddSlackIntegrationsBotUserIdTextLimit: migrating ===========1532main: -- transaction_open?()1533main: -> 0.0000s1534main: -- current_schema()1535main: -> 0.0005s1536main: -- transaction_open?()1537main: -> 0.0000s1538main: -- execute("ALTER TABLE slack_integrations\nADD CONSTRAINT check_bc553aea8a\nCHECK ( char_length(bot_user_id) <= 255 )\nNOT VALID;\n")1539main: -> 0.0007s1540main: -- current_schema()1541main: -> 0.0004s1542main: -- execute("ALTER TABLE slack_integrations VALIDATE CONSTRAINT check_bc553aea8a;")1543main: -> 0.0007s1544main: == 20220502152633 AddSlackIntegrationsBotUserIdTextLimit: migrated (0.0079s) ==1545main: == 20220502173045 ResetTooManyTagsSkippedRegistryImports: migrating ===========1546main: -- transaction_open?()1547main: -> 0.0000s1548main: -- Scheduled 0 ResetTooManyTagsSkippedRegistryImports jobs with a maximum of 10000 records per batch and an interval of 120 seconds.1549The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:26 UTC."1550main: == 20220502173045 ResetTooManyTagsSkippedRegistryImports: migrated (0.0031s) ==1551main: == 20220503035221 AddGitlabSchemaToBatchedBackgroundMigrations: migrating =====1552main: -- add_column(:batched_background_migrations, :gitlab_schema, :text, {:null=>false, :default=>:gitlab_main})1553main: -> 0.0017s1554main: -- change_column_default(:batched_background_migrations, :gitlab_schema, {:from=>:gitlab_main, :to=>nil})1555main: -> 0.0028s1556main: == 20220503035221 AddGitlabSchemaToBatchedBackgroundMigrations: migrated (0.0048s) 1557main: == 20220503035437 AddTextLimitToBatchedBackgroundMigrationsGitlabSchema: migrating 1558main: -- transaction_open?()1559main: -> 0.0000s1560main: -- current_schema()1561main: -> 0.0004s1562main: -- transaction_open?()1563main: -> 0.0000s1564main: -- execute("ALTER TABLE batched_background_migrations\nADD CONSTRAINT check_0406d9776f\nCHECK ( char_length(gitlab_schema) <= 255 )\nNOT VALID;\n")1565main: -> 0.0008s1566main: -- current_schema()1567main: -> 0.0004s1568main: -- execute("ALTER TABLE batched_background_migrations VALIDATE CONSTRAINT check_0406d9776f;")1569main: -> 0.0007s1570main: == 20220503035437 AddTextLimitToBatchedBackgroundMigrationsGitlabSchema: migrated (0.0081s) 1571main: == 20220503073401 RecreateIndexForGroupGroupLinkWithBothGroupIds: migrating ===1572main: -- transaction_open?()1573main: -> 0.0000s1574main: -- view_exists?(:postgres_partitions)1575main: -> 0.0010s1576main: -- index_exists?(:group_group_links, [:shared_with_group_id, :shared_group_id], {:name=>"index_group_group_links_on_shared_with_group_and_shared_group", :algorithm=>:concurrently})1577main: -> 0.0028s1578main: -- add_index(:group_group_links, [:shared_with_group_id, :shared_group_id], {:name=>"index_group_group_links_on_shared_with_group_and_shared_group", :algorithm=>:concurrently})1579main: -> 0.0012s1580main: -- transaction_open?()1581main: -> 0.0000s1582main: -- view_exists?(:postgres_partitions)1583main: -> 0.0009s1584main: -- indexes(:group_group_links)1585main: -> 0.0035s1586main: -- remove_index(:group_group_links, {:algorithm=>:concurrently, :name=>"index_group_group_links_on_shared_with_group_id"})1587main: -> 0.0009s1588main: == 20220503073401 RecreateIndexForGroupGroupLinkWithBothGroupIds: migrated (0.0227s) 1589main: == 20220503102855 AddNamespaceCiCdSettingsTable: migrating ====================1590main: -- create_table(:namespace_ci_cd_settings, {:id=>false})1591main: -> 0.0025s1592main: == 20220503102855 AddNamespaceCiCdSettingsTable: migrated (0.0028s) ===========1593main: == 20220503114353 PrepareConfidentialNoteIndex: migrating =====================1594main: -- index_exists?(:notes, :confidential, {:where=>"confidential = true", :name=>"index_notes_on_confidential", :algorithm=>:concurrently})1595main: -> 0.0080s1596main: -- add_index_options(:notes, :confidential, {:where=>"confidential = true", :name=>"index_notes_on_confidential", :algorithm=>:concurrently})1597main: -> 0.0000s1598main: == 20220503114353 PrepareConfidentialNoteIndex: migrated (0.0132s) ============1599main: == 20220503134610 RemoveRequirementsManagementTestReportsRequirementId: migrating 1600main: -- transaction_open?()1601main: -> 0.0000s1602main: -- remove_column(:requirements_management_test_reports, :requirement_id)1603main: -> 0.0011s1604main: == 20220503134610 RemoveRequirementsManagementTestReportsRequirementId: migrated (0.0037s) 1605main: == 20220504042847 AddSlackSigningKeyToApplicationSettings: migrating ==========1606main: -- add_column(:application_settings, :encrypted_slack_app_signing_secret, :binary)1607main: -> 0.0019s1608main: -- add_column(:application_settings, :encrypted_slack_app_signing_secret_iv, :binary)1609main: -> 0.0009s1610main: == 20220504042847 AddSlackSigningKeyToApplicationSettings: migrated (0.0031s) =1611main: == 20220504083348 AddIndexesForPrimaryEmailPostRegressionCleanupMigration: migrating 1612main: -- indexes(:users)1613main: -> 0.0182s1614main: -- current_schema()1615main: -> 0.0005s1616main: -- execute("CREATE INDEX CONCURRENTLY index_users_on_id_for_primary_email_migration\nON users (id) INCLUDE (email, confirmed_at)\nWHERE confirmed_at IS NOT NULL\n")1617main: -> 0.0020s1618main: -- transaction_open?()1619main: -> 0.0000s1620main: -- view_exists?(:postgres_partitions)1621main: -> 0.0010s1622main: -- index_exists?(:emails, [:email, :user_id], {:name=>:index_emails_on_email_user_id, :algorithm=>:concurrently})1623main: -> 0.0034s1624main: -- add_index(:emails, [:email, :user_id], {:name=>:index_emails_on_email_user_id, :algorithm=>:concurrently})1625main: -> 0.0012s1626main: == 20220504083348 AddIndexesForPrimaryEmailPostRegressionCleanupMigration: migrated (0.0357s) 1627main: == 20220504083836 CleanupAfterFixingRegressionWithNewUsersEmails: migrating ===1628main: == 20220504083836 CleanupAfterFixingRegressionWithNewUsersEmails: migrated (0.0044s) 1629main: == 20220504084136 DropTemporaryIndexesForPrimaryEmailPostRegressionCleanup: migrating 1630main: -- transaction_open?()1631main: -> 0.0000s1632main: -- view_exists?(:postgres_partitions)1633main: -> 0.0010s1634main: -- indexes(:users)1635main: -> 0.0187s1636main: -- remove_index(:users, {:algorithm=>:concurrently, :name=>:index_users_on_id_for_primary_email_migration})1637main: -> 0.0016s1638main: -- transaction_open?()1639main: -> 0.0000s1640main: -- view_exists?(:postgres_partitions)1641main: -> 0.0009s1642main: -- indexes(:emails)1643main: -> 0.0044s1644main: -- remove_index(:emails, {:algorithm=>:concurrently, :name=>:index_emails_on_email_user_id})1645main: -> 0.0011s1646main: == 20220504084136 DropTemporaryIndexesForPrimaryEmailPostRegressionCleanup: migrated (0.0404s) 1647main: == 20220504140036 AddContainerRegistrySizeToNamespaceRootStorageStatistics: migrating 1648main: -- add_column(:namespace_root_storage_statistics, :container_registry_size, :bigint, {:default=>0, :null=>false})1649main: -> 0.0016s1650main: == 20220504140036 AddContainerRegistrySizeToNamespaceRootStorageStatistics: migrated (0.0018s) 1651main: == 20220505022001 AddIndexToDeploymentsOnCreatedAtClusterIdAndProjectId: migrating 1652main: -- transaction_open?()1653main: -> 0.0000s1654main: -- view_exists?(:postgres_partitions)1655main: -> 0.0012s1656main: -- index_exists?(:deployments, [:created_at, :cluster_id, :project_id], {:name=>"tp_index_created_at_cluster_id_project_id_on_deployments", :where=>"cluster_id is not null and created_at > '2022-04-03 00:00:00'", :algorithm=>:concurrently})1657main: -> 0.0170s1658main: -- add_index(:deployments, [:created_at, :cluster_id, :project_id], {:name=>"tp_index_created_at_cluster_id_project_id_on_deployments", :where=>"cluster_id is not null and created_at > '2022-04-03 00:00:00'", :algorithm=>:concurrently})1659main: -> 0.0016s1660main: == 20220505022001 AddIndexToDeploymentsOnCreatedAtClusterIdAndProjectId: migrated (0.0269s) 1661main: == 20220505044348 FixAutomaticIterationsCadencesStartDate: migrating ==========1662main: -- execute("UPDATE iterations_cadences\nSET start_date=COALESCE(\n (\n SELECT start_date\n FROM sprints\n WHERE iterations_cadences.id=sprints.iterations_cadence_id\n ORDER BY sprints.start_date ASC\n LIMIT 1\n ),\n start_date\n)\nWHERE iterations_cadences.automatic=true;\n")1663main: -> 0.0018s1664main: == 20220505044348 FixAutomaticIterationsCadencesStartDate: migrated (0.0020s) =1665main: == 20220505053504 RemoveNamespacesIdParentIdInversePartialIndex: migrating ====1666main: -- transaction_open?()1667main: -> 0.0000s1668main: -- view_exists?(:postgres_partitions)1669main: -> 0.0010s1670main: -- index_exists?(:namespaces, :id, {:name=>"index_namespaces_id_parent_id_is_not_null", :algorithm=>:concurrently})1671main: -> 0.0173s1672main: -- remove_index(:namespaces, {:name=>"index_namespaces_id_parent_id_is_not_null", :algorithm=>:concurrently, :column=>:id})1673main: -> 0.0177s1674main: == 20220505053504 RemoveNamespacesIdParentIdInversePartialIndex: migrated (0.0434s) 1675main: == 20220505060011 RemoveNamespacesIdParentIdPartialIndex: migrating ===========1676main: -- transaction_open?()1677main: -> 0.0000s1678main: -- view_exists?(:postgres_partitions)1679main: -> 0.0009s1680main: -- index_exists?(:namespaces, :id, {:name=>"index_namespaces_id_parent_id_is_null", :algorithm=>:concurrently})1681main: -> 0.0158s1682main: -- remove_index(:namespaces, {:name=>"index_namespaces_id_parent_id_is_null", :algorithm=>:concurrently, :column=>:id})1683main: -> 0.0179s1684main: == 20220505060011 RemoveNamespacesIdParentIdPartialIndex: migrated (0.0416s) ==1685main: == 20220505092254 AddAllowStaleRunnerPruningIndexToNamespaceCiCdSettings: migrating 1686main: -- transaction_open?()1687main: -> 0.0000s1688main: -- view_exists?(:postgres_partitions)1689main: -> 0.0009s1690main: -- index_exists?(:namespace_ci_cd_settings, :namespace_id, {:where=>"(allow_stale_runner_pruning = true)", :name=>"index_cicd_settings_on_namespace_id_where_stale_pruning_enabled", :algorithm=>:concurrently})1691main: -> 0.0015s1692main: -- add_index(:namespace_ci_cd_settings, :namespace_id, {:where=>"(allow_stale_runner_pruning = true)", :name=>"index_cicd_settings_on_namespace_id_where_stale_pruning_enabled", :algorithm=>:concurrently})1693main: -> 0.0013s1694main: == 20220505092254 AddAllowStaleRunnerPruningIndexToNamespaceCiCdSettings: migrated (0.0106s) 1695main: == 20220505174658 UpdateIndexOnAlertsToExcludeNullFingerprints: migrating =====1696main: -- transaction_open?()1697main: -> 0.0000s1698main: -- view_exists?(:postgres_partitions)1699main: -> 0.0010s1700main: -- index_exists?(:alert_management_alerts, [:project_id, :fingerprint], {:where=>"fingerprint IS NOT NULL and status <> 2", :name=>"index_unresolved_alerts_on_project_id_and_fingerprint", :unique=>true, :algorithm=>:concurrently})1701main: -> 0.0059s1702main: -- add_index(:alert_management_alerts, [:project_id, :fingerprint], {:where=>"fingerprint IS NOT NULL and status <> 2", :name=>"index_unresolved_alerts_on_project_id_and_fingerprint", :unique=>true, :algorithm=>:concurrently})1703main: -> 0.0017s1704main: -- transaction_open?()1705main: -> 0.0000s1706main: -- view_exists?(:postgres_partitions)1707main: -> 0.0009s1708main: -- indexes(:alert_management_alerts)1709main: -> 0.0063s1710main: -- remove_index(:alert_management_alerts, {:algorithm=>:concurrently, :name=>"index_partial_am_alerts_on_project_id_and_fingerprint"})1711main: -> 0.0013s1712main: == 20220505174658 UpdateIndexOnAlertsToExcludeNullFingerprints: migrated (0.0312s) 1713main: == 20220505193512 AddNotNullConstraintToIssuesWorkItemType: migrating =========1714main: -- current_schema()1715main: -> 0.0005s1716main: -- transaction_open?()1717main: -> 0.0000s1718main: -- current_schema()1719main: -> 0.0004s1720main: -- transaction_open?()1721main: -> 0.0000s1722main: -- execute("ALTER TABLE issues\nADD CONSTRAINT check_2addf801cd\nCHECK ( work_item_type_id IS NOT NULL )\nNOT VALID;\n")1723main: -> 0.0009s1724main: == 20220505193512 AddNotNullConstraintToIssuesWorkItemType: migrated (0.0085s) 1725main: == 20220506123922 AddNotNullConstraintWithoutValidationToRequirementsIssueId: migrating 1726main: -- current_schema()1727main: -> 0.0005s1728main: -- transaction_open?()1729main: -> 0.0000s1730main: -- current_schema()1731main: -> 0.0004s1732main: -- transaction_open?()1733main: -> 0.0000s1734main: -- execute("ALTER TABLE requirements\nADD CONSTRAINT check_requirement_issue_not_null\nCHECK ( issue_id IS NOT NULL )\nNOT VALID;\n")1735main: -> 0.0008s1736main: == 20220506123922 AddNotNullConstraintWithoutValidationToRequirementsIssueId: migrated (0.0086s) 1737main: == 20220506124021 SchedulePopulateRequirementsIssueId: migrating ==============1738main: -- transaction_open?()1739main: -> 0.0000s1740main: -- Scheduled 0 MigrateRequirementsToWorkItems jobs with a maximum of 100 records per batch and an interval of 120 seconds.1741The migration is expected to take at least 0 seconds. Expect all jobs to have completed after 2022-12-07 23:51:26 UTC."1742main: == 20220506124021 SchedulePopulateRequirementsIssueId: migrated (0.0030s) =====1743main: == 20220506154054 CreateSyncNamespaceDetailsTrigger: migrating ================1744main: -- execute("CREATE OR REPLACE FUNCTION update_namespace_details_from_namespaces()\nRETURNS TRIGGER AS\n$$\nBEGIN\nINSERT INTO\n namespace_details (\n description,\n description_html,\n cached_markdown_version,\n updated_at,\n created_at,\n namespace_id\n )\nVALUES\n (\n NEW.description,\n NEW.description_html,\n NEW.cached_markdown_version,\n NEW.updated_at,\n NEW.updated_at,\n NEW.id\n ) ON CONFLICT (namespace_id) DO\nUPDATE\nSET\n description = NEW.description,\n description_html = NEW.description_html,\n cached_markdown_version = NEW.cached_markdown_version,\n updated_at = NEW.updated_at\nWHERE\n namespace_details.namespace_id = NEW.id;RETURN NULL;\n\nEND\n$$ LANGUAGE PLPGSQL\n")1745main: -> 0.0008s1746main: -- execute("CREATE TRIGGER trigger_update_details_on_namespace_update\nAFTER UPDATE ON namespaces\nFOR EACH ROW\nWHEN (\n NEW.type <> 'Project' AND (\n OLD.description IS DISTINCT FROM NEW.description OR\n OLD.description_html IS DISTINCT FROM NEW.description_html OR\n OLD.cached_markdown_version IS DISTINCT FROM NEW.cached_markdown_version)\n)\nEXECUTE PROCEDURE update_namespace_details_from_namespaces();\n")1747main: -> 0.0011s1748main: -- execute("CREATE TRIGGER trigger_update_details_on_namespace_insert\nAFTER INSERT ON namespaces\nFOR EACH ROW\nWHEN (NEW.type <> 'Project')\nEXECUTE PROCEDURE update_namespace_details_from_namespaces();\n")1749main: -> 0.0008s1750main: == 20220506154054 CreateSyncNamespaceDetailsTrigger: migrated (0.0030s) =======1751main: == 20220506180411 AddIndexToVulnerabilityFeedbackFindingUuid: migrating =======1752main: -- transaction_open?()1753main: -> 0.0000s1754main: -- view_exists?(:postgres_partitions)1755main: -> 0.0010s1756main: -- index_exists?(:vulnerability_feedback, :finding_uuid, {:using=>:hash, :name=>"index_vulnerability_feedback_finding_uuid", :algorithm=>:concurrently})1757main: -> 0.0059s1758main: -- add_index(:vulnerability_feedback, :finding_uuid, {:using=>:hash, :name=>"index_vulnerability_feedback_finding_uuid", :algorithm=>:concurrently})1759main: -> 0.0016s1760main: == 20220506180411 AddIndexToVulnerabilityFeedbackFindingUuid: migrated (0.0154s) 1761main: == 20220506201639 RemoveDevopsAdoptionSecurityScanSucceededColumn: migrating ==1762main: -- remove_column(:analytics_devops_adoption_snapshots, :security_scan_succeeded)1763main: -> 0.0013s1764main: == 20220506201639 RemoveDevopsAdoptionSecurityScanSucceededColumn: migrated (0.0015s) 1765main: == 20220507204024 AddSeparatedCachesOptionToProjectCiSettings: migrating ======1766main: -- add_column(:project_ci_cd_settings, :separated_caches, :boolean, {:default=>true, :null=>false})1767main: -> 0.0014s1768main: == 20220507204024 AddSeparatedCachesOptionToProjectCiSettings: migrated (0.0016s) 1769main: == 20220510003916 RemoveTmpEmptyTraversalIdsRootNamespaceIndex: migrating =====1770main: -- transaction_open?()1771main: -> 0.0000s1772main: -- view_exists?(:postgres_partitions)1773main: -> 0.0010s1774main: -- index_exists?(:namespaces, :id, {:name=>"tmp_index_namespaces_empty_traversal_ids_with_root_namespaces", :algorithm=>:concurrently})1775main: -> 0.0163s1776main: -- remove_index(:namespaces, {:name=>"tmp_index_namespaces_empty_traversal_ids_with_root_namespaces", :algorithm=>:concurrently, :column=>:id})1777main: -> 0.0168s1778main: == 20220510003916 RemoveTmpEmptyTraversalIdsRootNamespaceIndex: migrated (0.0412s) 1779main: == 20220510004501 RemoveTmpEmptyTraversalIdsChildNamespaceIndex: migrating ====1780main: -- transaction_open?()1781main: -> 0.0000s1782main: -- view_exists?(:postgres_partitions)1783main: -> 0.0009s1784main: -- index_exists?(:namespaces, :id, {:name=>"tmp_index_namespaces_empty_traversal_ids_with_child_namespaces", :algorithm=>:concurrently})1785main: -> 0.0149s1786main: -- remove_index(:namespaces, {:name=>"tmp_index_namespaces_empty_traversal_ids_with_child_namespaces", :algorithm=>:concurrently, :column=>:id})1787main: -> 0.0160s1788main: == 20220510004501 RemoveTmpEmptyTraversalIdsChildNamespaceIndex: migrated (0.0386s) 1789main: == 20220510121338 RemoveThreatMonitoringAlerts: migrating =====================1790main: -- execute("DELETE FROM alert_management_alerts WHERE domain = 1")1791main: -> 0.0009s1792main: == 20220510121338 RemoveThreatMonitoringAlerts: migrated (0.0012s) ============1793main: == 20220510192117 IndexExpirableUnknownArtifactsForRemoval: migrating =========1794main: -- index_exists?("ci_job_artifacts", [:expire_at, :job_id], {:name=>"tmp_index_ci_job_artifacts_on_expire_at_where_locked_unknown", :where=>"locked = 2 AND expire_at IS NOT NULL", :algorithm=>:concurrently})1795main: -> 0.0087s1796main: -- add_index_options("ci_job_artifacts", [:expire_at, :job_id], {:name=>"tmp_index_ci_job_artifacts_on_expire_at_where_locked_unknown", :where=>"locked = 2 AND expire_at IS NOT NULL", :algorithm=>:concurrently})1797main: -> 0.0001s1798main: == 20220510192117 IndexExpirableUnknownArtifactsForRemoval: migrated (0.0148s) 1799main: == 20220511090324 AddLastConsistencyCheckCursorsToVsaAggregations: migrating ==1800main: -- change_table(:analytics_cycle_analytics_aggregations, {:bulk=>true})1801main: -> 0.0020s1802main: == 20220511090324 AddLastConsistencyCheckCursorsToVsaAggregations: migrated (0.0022s) 1803main: == 20220511144946 AddWorkItemParentChildTable: migrating ======================1804main: -- create_table(:work_item_parent_links, {})1805main: -> 0.0046s1806main: == 20220511144946 AddWorkItemParentChildTable: migrated (0.0048s) =============1807main: == 20220511151646 AddExcludeFromFreeUserCapToNamespaceSettings: migrating =====1808main: -- add_column(:namespace_settings, :exclude_from_free_user_cap, :boolean, {:null=>false, :default=>false})1809main: -> 0.0014s1810main: == 20220511151646 AddExcludeFromFreeUserCapToNamespaceSettings: migrated (0.0016s) 1811main: == 20220511152439 RemoveNotNullConstraintFromWorkItemType: migrating ==========1812main: -- transaction_open?()1813main: -> 0.0000s1814main: -- transaction_open?()1815main: -> 0.0000s1816main: -- execute(" ALTER TABLE issues\n DROP CONSTRAINT IF EXISTS check_2addf801cd\n")1817main: -> 0.0008s1818main: == 20220511152439 RemoveNotNullConstraintFromWorkItemType: migrated (0.0034s) =1819main: == 20220511191502 AddRegistryMigrationGuardThresholdsToApplicationSettings: migrating 1820main: -- add_column(:application_settings, :container_registry_pre_import_timeout, :integer, {:default=>30 minutes, :null=>false})1821main: -> 0.0027s1822main: -- add_column(:application_settings, :container_registry_import_timeout, :integer, {:default=>10 minutes, :null=>false})1823main: -> 0.0017s1824main: == 20220511191502 AddRegistryMigrationGuardThresholdsToApplicationSettings: migrated (0.0048s) 1825main: == 20220511191503 AddPipelineCreateLimitPerProjectUserShaToApplicationSettings: migrating 1826main: -- add_column(:application_settings, :pipeline_limit_per_project_user_sha, :integer, {:default=>0, :null=>false})1827main: -> 0.0022s1828main: == 20220511191503 AddPipelineCreateLimitPerProjectUserShaToApplicationSettings: migrated (0.0024s) 1829main: == 20220511212620 AddIndexOnExpirableUnknownArtifactsForRemoval: migrating ====1830main: -- transaction_open?()1831main: -> 0.0000s1832main: -- view_exists?(:postgres_partitions)1833main: -> 0.0010s1834main: -- index_exists?("ci_job_artifacts", [:expire_at, :job_id], {:name=>"tmp_index_ci_job_artifacts_on_expire_at_where_locked_unknown", :where=>"locked = 2 AND expire_at IS NOT NULL", :algorithm=>:concurrently})1835main: -> 0.0085s1836main: -- add_index("ci_job_artifacts", [:expire_at, :job_id], {:name=>"tmp_index_ci_job_artifacts_on_expire_at_where_locked_unknown", :where=>"locked = 2 AND expire_at IS NOT NULL", :algorithm=>:concurrently})1837main: -> 0.0016s1838main: == 20220511212620 AddIndexOnExpirableUnknownArtifactsForRemoval: migrated (0.0201s) 1839main: == 20220512020500 IndexBatchedMigrationsOnGitlabSchemaAndConfiguration: migrating 1840main: -- transaction_open?()1841main: -> 0.0000s1842main: -- view_exists?(:postgres_partitions)1843main: -> 0.0009s1844main: -- index_exists?(:batched_background_migrations, [:gitlab_schema, :job_class_name, :table_name, :column_name, :job_arguments], {:unique=>true, :name=>"index_batched_migrations_on_gl_schema_and_unique_configuration", :algorithm=>:concurrently})1845main: -> 0.0031s1846main: -- add_index(:batched_background_migrations, [:gitlab_schema, :job_class_name, :table_name, :column_name, :job_arguments], {:unique=>true, :name=>"index_batched_migrations_on_gl_schema_and_unique_configuration", :algorithm=>:concurrently})1847main: -> 0.0016s1848main: == 20220512020500 IndexBatchedMigrationsOnGitlabSchemaAndConfiguration: migrated (0.0126s) 1849main: == 20220512190659 RemoveWebHooksWebHookLogsWebHookIdFk: migrating =============1850main: -- transaction_open?()1851main: -> 0.0000s1852main: -- transaction_open?()1853main: -> 0.0000s1854main: -- execute("LOCK web_hooks, web_hook_logs IN ACCESS EXCLUSIVE MODE")1855main: -> 0.0006s1856main: -- foreign_keys(:web_hook_logs)1857main: -> 0.0029s1858main: -- remove_foreign_key(:web_hook_logs, :web_hooks, {:name=>"fk_rails_bb3355782d"})1859main: -> 0.0038s1860main: == 20220512190659 RemoveWebHooksWebHookLogsWebHookIdFk: migrated (0.0100s) ====1861main: == 20220513043344 RescheduleExpireOAuthTokens: migrating ======================1862main: == 20220513043344 RescheduleExpireOAuthTokens: migrated (0.0343s) =============1863main: == 20220513093614 AddDingTalkIntoApplicationSettings: migrating ===============1864main: -- add_column(:application_settings, :dingtalk_integration_enabled, :boolean, {:null=>false, :default=>false, :comment=>"JiHu-specific column"})1865main: -> 0.0044s1866main: -- add_column(:application_settings, :encrypted_dingtalk_corpid, :binary, {:comment=>"JiHu-specific column"})1867main: -> 0.0018s1868main: -- add_column(:application_settings, :encrypted_dingtalk_corpid_iv, :binary, {:comment=>"JiHu-specific column"})1869main: -> 0.0018s1870main: -- add_column(:application_settings, :encrypted_dingtalk_app_key, :binary, {:comment=>"JiHu-specific column"})1871main: -> 0.0017s1872main: -- add_column(:application_settings, :encrypted_dingtalk_app_key_iv, :binary, {:comment=>"JiHu-specific column"})1873main: -> 0.0016s1874main: -- add_column(:application_settings, :encrypted_dingtalk_app_secret, :binary, {:comment=>"JiHu-specific column"})1875main: -> 0.0015s1876main: -- add_column(:application_settings, :encrypted_dingtalk_app_secret_iv, :binary, {:comment=>"JiHu-specific column"})1877main: -> 0.0016s1878main: == 20220513093614 AddDingTalkIntoApplicationSettings: migrated (0.0152s) ======1879main: == 20220513093615 AddDingTalkTrackerData: migrating ===========================1880main: -- create_table(:dingtalk_tracker_data, {:comment=>"JiHu-specific table"})1881main: -- quote_column_name(:corpid)1882main: -> 0.0000s1883main: -> 0.0073s1884main: == 20220513093615 AddDingTalkTrackerData: migrated (0.0075s) ==================1885main: == 20220513095545 CreateTimelogCategories: migrating ==========================1886main: -- create_table(:timelog_categories, {})1887main: -- quote_column_name(:name)1888main: -> 0.0000s1889main: -- quote_column_name(:description)1890main: -> 0.0000s1891main: -- quote_column_name(:color)1892main: -> 0.0000s1893main: -> 0.0068s1894main: == 20220513095545 CreateTimelogCategories: migrated (0.0070s) =================1895main: == 20220513114706 AddJiraConnectApplicationIdApplicationSetting: migrating ====1896main: -- add_column(:application_settings, :jira_connect_application_key, :text)1897main: -> 0.0020s1898main: == 20220513114706 AddJiraConnectApplicationIdApplicationSetting: migrated (0.0022s) 1899main: == 20220513114850 AddTextLimitToJiraConnectApplicationIdApplicationSetting: migrating 1900main: -- transaction_open?()1901main: -> 0.0000s1902main: -- current_schema()1903main: -> 0.0006s1904main: -- transaction_open?()1905main: -> 0.0000s1906main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_e2dd6e290a\nCHECK ( char_length(jira_connect_application_key) <= 255 )\nNOT VALID;\n")1907main: -> 0.0016s1908main: -- current_schema()1909main: -> 0.0005s1910main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_e2dd6e290a;")1911main: -> 0.0014s1912main: == 20220513114850 AddTextLimitToJiraConnectApplicationIdApplicationSetting: migrated (0.0106s) 1913main: == 20220516054002 TempIndexForProjectNamespaceMemberBackfill: migrating =======1914main: -- transaction_open?()1915main: -> 0.0000s1916main: -- view_exists?(:postgres_partitions)1917main: -> 0.0011s1918main: -- index_exists?(:members, :id, {:where=>"members.member_namespace_id IS NULL and members.type = 'ProjectMember'", :name=>"tmp_index_for_namespace_id_migration_on_project_members", :algorithm=>:concurrently})1919main: -> 0.0112s1920main: -- add_index(:members, :id, {:where=>"members.member_namespace_id IS NULL and members.type = 'ProjectMember'", :name=>"tmp_index_for_namespace_id_migration_on_project_members", :algorithm=>:concurrently})1921main: -> 0.0015s1922main: == 20220516054002 TempIndexForProjectNamespaceMemberBackfill: migrated (0.0210s) 1923main: == 20220516054011 ScheduleBackfillProjectMemberNamespaceId: migrating =========1924main: == 20220516054011 ScheduleBackfillProjectMemberNamespaceId: migrated (0.0277s) 1925main: == 20220516092207 AddGloballyAllowedIpsToApplicationSetting: migrating ========1926main: -- add_column(:application_settings, :globally_allowed_ips, :text, {:null=>false, :default=>""})1927main: -> 0.0029s1928main: == 20220516092207 AddGloballyAllowedIpsToApplicationSetting: migrated (0.0032s) 1929main: == 20220516100652 DropComplianceManagementFrameworksRegulated: migrating ======1930main: -- remove_column(:compliance_management_frameworks, :regulated)1931main: -> 0.0013s1932main: == 20220516100652 DropComplianceManagementFrameworksRegulated: migrated (0.0015s) 1933main: == 20220516103353 FinalizeRoutesBackfillingForProjects: migrating =============1934main: == 20220516103353 FinalizeRoutesBackfillingForProjects: migrated (0.0137s) ====1935main: == 20220516123101 AddTextLimitToGloballyAllowedIpsOnApplicationSettings: migrating 1936main: -- transaction_open?()1937main: -> 0.0000s1938main: -- current_schema()1939main: -> 0.0005s1940main: -- transaction_open?()1941main: -> 0.0000s1942main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_734cc9407a\nCHECK ( char_length(globally_allowed_ips) <= 255 )\nNOT VALID;\n")1943main: -> 0.0016s1944main: -- current_schema()1945main: -> 0.0005s1946main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_734cc9407a;")1947main: -> 0.0013s1948main: == 20220516123101 AddTextLimitToGloballyAllowedIpsOnApplicationSettings: migrated (0.0100s) 1949main: == 20220516201245 AddSecurityPolicyScanExecutionSchedulesToPlanLimits: migrating 1950main: -- add_column(:plan_limits, :security_policy_scan_execution_schedules, :integer, {:default=>0, :null=>false})1951main: -> 0.0020s1952main: == 20220516201245 AddSecurityPolicyScanExecutionSchedulesToPlanLimits: migrated (0.0022s) 1953main: == 20220517101119 CreateConfidentialNotesIndexSynchronously: migrating ========1954main: -- transaction_open?()1955main: -> 0.0000s1956main: -- view_exists?(:postgres_partitions)1957main: -> 0.0011s1958main: -- index_exists?(:notes, :confidential, {:where=>"confidential = true", :name=>"index_notes_on_confidential", :algorithm=>:concurrently})1959main: -> 0.0091s1960main: -- add_index(:notes, :confidential, {:where=>"confidential = true", :name=>"index_notes_on_confidential", :algorithm=>:concurrently})1961main: -> 0.0016s1962main: == 20220517101119 CreateConfidentialNotesIndexSynchronously: migrated (0.0212s) 1963main: == 20220517133753 MigrateFreeUserCapRemediation: migrating ====================1964main: == 20220517133753 MigrateFreeUserCapRemediation: migrated (0.0006s) ===========1965main: == 20220517144749 RemoveVulnerabilityApprovalRules: migrating =================1966main: == 20220517144749 RemoveVulnerabilityApprovalRules: migrated (0.0167s) ========1967main: == 20220517182529 CreateVulnerabilityStateTransition: migrating ===============1968main: -- create_table(:vulnerability_state_transitions, {})1969main: -> 0.0033s1970main: == 20220517182529 CreateVulnerabilityStateTransition: migrated (0.0035s) ======1971main: == 20220518102414 AddIndexToErrorTrackingClientKeys: migrating ================1972main: -- transaction_open?()1973main: -> 0.0000s1974main: -- view_exists?(:postgres_partitions)1975main: -> 0.0012s1976main: -- index_exists?(:error_tracking_client_keys, [:project_id, :public_key], {:where=>"active = true", :name=>"index_error_tracking_client_for_enabled_check", :algorithm=>:concurrently})1977main: -> 0.0035s1978main: -- add_index(:error_tracking_client_keys, [:project_id, :public_key], {:where=>"active = true", :name=>"index_error_tracking_client_for_enabled_check", :algorithm=>:concurrently})1979main: -> 0.0017s1980main: == 20220518102414 AddIndexToErrorTrackingClientKeys: migrated (0.0136s) =======1981main: == 20220518183504 CreateSshSignatures: migrating ==============================1982main: -- create_table(:ssh_signatures, {})1983main: -> 0.0053s1984main: == 20220518183504 CreateSshSignatures: migrated (0.0054s) =====================1985main: == 20220518183548 AddProjectsRelationToSshSignatures: migrating ===============1986main: -- transaction_open?()1987main: -> 0.0000s1988main: -- foreign_keys(:ssh_signatures)1989main: -> 0.0030s1990main: -- transaction_open?()1991main: -> 0.0000s1992main: -- execute("ALTER TABLE ssh_signatures\nADD CONSTRAINT fk_7d2f93996c\nFOREIGN KEY (project_id)\nREFERENCES projects (id)\nON DELETE CASCADE\nNOT VALID;\n")1993main: -> 0.0027s1994main: -- execute("ALTER TABLE ssh_signatures VALIDATE CONSTRAINT fk_7d2f93996c;")1995main: -> 0.0016s1996main: == 20220518183548 AddProjectsRelationToSshSignatures: migrated (0.0107s) ======1997main: == 20220519013213 CreateClusterEnabledGrants: migrating =======================1998main: -- create_table(:cluster_enabled_grants, {})1999main: -> 0.0036s2000main: == 20220519013213 CreateClusterEnabledGrants: migrated (0.0038s) ==============2001main: == 20220519045133 BulkInsertClusterEnabledGrants: migrating ===================2002main: == 20220519045133 BulkInsertClusterEnabledGrants: migrated (0.0324s) ==========2003main: == 20220519141345 AddJobArtifactIdOnRefreshStartToBuildArtifactsSizeRefresh: migrating 2004main: -- add_column(:project_build_artifacts_size_refreshes, :last_job_artifact_id_on_refresh_start, :bigint, {:default=>0})2005main: -> 0.0019s2006main: == 20220519141345 AddJobArtifactIdOnRefreshStartToBuildArtifactsSizeRefresh: migrated (0.0021s) 2007main: == 20220520030504 DropIndexNamespacesOnName: migrating ========================2008main: -- transaction_open?()2009main: -> 0.0000s2010main: -- view_exists?(:postgres_partitions)2011main: -> 0.0011s2012main: -- indexes(:namespaces)2013main: -> 0.0152s2014main: -- current_schema()2015main: -> 0.0005s2016main: == 20220520030504 DropIndexNamespacesOnName: migrated (0.0226s) ===============2017main: == 20220520040416 ScheduleSetLegacyOpenSourceLicenseAvailableForNonPublicProjects: migrating 2018main: == 20220520040416 ScheduleSetLegacyOpenSourceLicenseAvailableForNonPublicProjects: migrated (0.0001s) 2019main: == 20220520120637 AddInstallableConanPackagesIndexToPackages: migrating =======2020main: -- transaction_open?()2021main: -> 0.0000s2022main: -- view_exists?(:postgres_partitions)2023main: -> 0.0011s2024main: -- index_exists?(:packages_packages, [:project_id, :id], {:where=>"package_type = 3 AND status IN (0, 1)", :name=>"idx_installable_conan_pkgs_on_project_id_id", :algorithm=>:concurrently})2025main: -> 0.0109s2026main: -- add_index(:packages_packages, [:project_id, :id], {:where=>"package_type = 3 AND status IN (0, 1)", :name=>"idx_installable_conan_pkgs_on_project_id_id", :algorithm=>:concurrently})2027main: -> 0.0015s2028main: == 20220520120637 AddInstallableConanPackagesIndexToPackages: migrated (0.0208s) 2029main: == 20220520122755 UnlockDelayedProjectRemoval: migrating ======================2030main: == 20220520122755 UnlockDelayedProjectRemoval: migrated (0.0001s) =============2031main: == 20220520143105 AddKeysRelationToSshSignatures: migrating ===================2032main: -- transaction_open?()2033main: -> 0.0000s2034main: -- foreign_keys(:ssh_signatures)2035main: -> 0.0031s2036main: -- transaction_open?()2037main: -> 0.0000s2038main: -- execute("ALTER TABLE ssh_signatures\nADD CONSTRAINT fk_f177ea6aa5\nFOREIGN KEY (key_id)\nREFERENCES keys (id)\nON DELETE CASCADE\nNOT VALID;\n")2039main: -> 0.0011s2040main: -- execute("ALTER TABLE ssh_signatures VALIDATE CONSTRAINT fk_f177ea6aa5;")2041main: -> 0.0012s2042main: == 20220520143105 AddKeysRelationToSshSignatures: migrated (0.0091s) ==========2043main: == 20220520144821 AddRegistryMigrationPreImportTagsRateToApplicationSettings: migrating 2044main: -- add_column(:application_settings, :container_registry_pre_import_tags_rate, :decimal, {:precision=>6, :scale=>2, :default=>0.5, :null=>false})2045main: -> 0.0031s2046main: == 20220520144821 AddRegistryMigrationPreImportTagsRateToApplicationSettings: migrated (0.0033s) 2047main: == 20220523030804 AddWebHookCallsMedAndMaxToPlanLimits: migrating =============2048main: -- add_column(:plan_limits, :web_hook_calls_mid, :integer, {:null=>false, :default=>0})2049main: -> 0.0023s2050main: -- add_column(:plan_limits, :web_hook_calls_low, :integer, {:null=>false, :default=>0})2051main: -> 0.0015s2052main: == 20220523030804 AddWebHookCallsMedAndMaxToPlanLimits: migrated (0.0041s) ====2053main: == 20220523030805 AddWebHookCallsToPlanLimitsPaidTiers: migrating =============2054main: == 20220523030805 AddWebHookCallsToPlanLimitsPaidTiers: migrated (0.0002s) ====2055main: == 20220523162734 AddVulnerabilityReadsCastedClusterAgentColumn: migrating ====2056main: -- add_column(:vulnerability_reads, :casted_cluster_agent_id, :bigint)2057main: -> 0.0010s2058main: == 20220523162734 AddVulnerabilityReadsCastedClusterAgentColumn: migrated (0.0012s) 2059main: == 20220523163734 UpdateVulnerabilityReadsTriggerFunctions: migrating =========2060main: -- execute("CREATE OR REPLACE FUNCTION insert_or_update_vulnerability_reads()\nRETURNS TRIGGER\nLANGUAGE plpgsql\nAS $$\nDECLARE\n severity smallint;\n state smallint;\n report_type smallint;\n resolved_on_default_branch boolean;\nBEGIN\n IF (NEW.vulnerability_id IS NULL AND (TG_OP = 'INSERT' OR TG_OP = 'UPDATE')) THEN\n RETURN NULL;\n END IF;\n\n IF (TG_OP = 'UPDATE' AND OLD.vulnerability_id IS NOT NULL AND NEW.vulnerability_id IS NOT NULL) THEN\n RETURN NULL;\n END IF;\n\n SELECT\n vulnerabilities.severity, vulnerabilities.state, vulnerabilities.report_type, vulnerabilities.resolved_on_default_branch\n INTO\n severity, state, report_type, resolved_on_default_branch\n FROM\n vulnerabilities\n WHERE\n vulnerabilities.id = NEW.vulnerability_id;\n\n INSERT INTO vulnerability_reads (vulnerability_id, project_id, scanner_id, report_type, severity, state, resolved_on_default_branch, uuid, location_image, cluster_agent_id, casted_cluster_agent_id)\n VALUES (NEW.vulnerability_id, NEW.project_id, NEW.scanner_id, report_type, severity, state, resolved_on_default_branch, NEW.uuid::uuid, NEW.location->>'image', NEW.location->'kubernetes_resource'->>'agent_id', CAST(NEW.location->'kubernetes_resource'->>'agent_id' AS bigint))\n ON CONFLICT(vulnerability_id) DO NOTHING;\n RETURN NULL;\nEND\n$$;\n")2061main: -> 0.0015s2062main: -- execute("CREATE OR REPLACE FUNCTION update_location_from_vulnerability_occurrences()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\nUPDATE\n vulnerability_reads\nSET\n location_image = NEW.location->>'image',\n casted_cluster_agent_id = CAST(NEW.location->'kubernetes_resource'->>'agent_id' AS bigint),\n cluster_agent_id = NEW.location->'kubernetes_resource'->>'agent_id'\nWHERE\n vulnerability_id = NEW.vulnerability_id;\nRETURN NULL;\n\nEND\n$$;\n")2063main: -> 0.0008s2064main: == 20220523163734 UpdateVulnerabilityReadsTriggerFunctions: migrated (0.0026s) 2065main: == 20220523164734 AddForeignKeyToVulnerabilityReadsCastedClusterAgentId: migrating 2066main: -- transaction_open?()2067main: -> 0.0000s2068main: -- foreign_keys(:vulnerability_reads)2069main: -> 0.0033s2070main: -- transaction_open?()2071main: -> 0.0000s2072main: -- execute("ALTER TABLE vulnerability_reads\nADD CONSTRAINT fk_aee839e611\nFOREIGN KEY (casted_cluster_agent_id)\nREFERENCES cluster_agents (id)\nON DELETE SET NULL\nNOT VALID;\n")2073main: -> 0.0011s2074main: -- execute("ALTER TABLE vulnerability_reads VALIDATE CONSTRAINT fk_aee839e611;")2075main: -> 0.0011s2076main: == 20220523164734 AddForeignKeyToVulnerabilityReadsCastedClusterAgentId: migrated (0.0089s) 2077main: == 20220523165734 AddIndexToVulnerabilityReadsCastedClusterAgentId: migrating =2078main: -- transaction_open?()2079main: -> 0.0000s2080main: -- view_exists?(:postgres_partitions)2081main: -> 0.0011s2082main: -- index_exists?(:vulnerability_reads, :casted_cluster_agent_id, {:name=>"index_cis_vulnerability_reads_on_cluster_agent_id", :where=>"report_type = 7", :algorithm=>:concurrently})2083main: -> 0.0064s2084main: -- add_index(:vulnerability_reads, :casted_cluster_agent_id, {:name=>"index_cis_vulnerability_reads_on_cluster_agent_id", :where=>"report_type = 7", :algorithm=>:concurrently})2085main: -> 0.0016s2086main: == 20220523165734 AddIndexToVulnerabilityReadsCastedClusterAgentId: migrated (0.0166s) 2087main: == 20220523171107 DropDeployTokensTokenColumn: migrating ======================2088main: -- remove_column(:deploy_tokens, :token)2089main: -> 0.0013s2090main: == 20220523171107 DropDeployTokensTokenColumn: migrated (0.0015s) =============2091main: == 20220524021855 AddDeletedAtToTerraformStates: migrating ====================2092main: -- add_column(:terraform_states, :deleted_at, :datetime_with_timezone)2093main: -> 0.0009s2094main: == 20220524021855 AddDeletedAtToTerraformStates: migrated (0.0010s) ===========2095main: == 20220524074947 FinalizeBackfillNullNoteDiscussionIds: migrating ============2096main: == 20220524074947 FinalizeBackfillNullNoteDiscussionIds: migrated (0.0039s) ===2097main: == 20220524080944 CleanupOrphanedRoutes: migrating ============================2098main: == 20220524080944 CleanupOrphanedRoutes: migrated (0.0302s) ===================2099main: == 20220524081955 RemoveNotesNullDiscussionIdTempIndex: migrating =============2100main: -- transaction_open?()2101main: -> 0.0000s2102main: -- view_exists?(:postgres_partitions)2103main: -> 0.0012s2104main: -- indexes(:notes)2105main: -> 0.0101s2106main: -- remove_index(:notes, {:algorithm=>:concurrently, :name=>"tmp_index_notes_on_id_where_discussion_id_is_null"})2107main: -> 0.0013s2108main: == 20220524081955 RemoveNotesNullDiscussionIdTempIndex: migrated (0.0198s) ====2109main: == 20220524132416 PrepareJobArtifactProjectIdIndex: migrating =================2110main: -- index_exists?(:ci_job_artifacts, [:project_id, :id], {:name=>"index_ci_job_artifacts_on_project_id_and_id", :algorithm=>:concurrently})2111main: -> 0.0095s2112main: -- add_index_options(:ci_job_artifacts, [:project_id, :id], {:name=>"index_ci_job_artifacts_on_project_id_and_id", :algorithm=>:concurrently})2113main: -> 0.0000s2114main: == 20220524132416 PrepareJobArtifactProjectIdIndex: migrated (0.0157s) ========2115main: == 20220524141800 CreateAuditEventsStreamingHeaders: migrating ================2116main: -- create_table(:audit_events_streaming_headers, {})2117main: -- quote_column_name(:key)2118main: -> 0.0000s2119main: -- quote_column_name(:value)2120main: -> 0.0000s2121main: -> 0.0054s2122main: == 20220524141800 CreateAuditEventsStreamingHeaders: migrated (0.0056s) =======2123main: == 20220524164122 LimitProjectAndGroupVariables: migrating ====================2124main: -- add_column(:plan_limits, :project_ci_variables, :integer, {:default=>200, :null=>false})2125main: -> 0.0021s2126main: -- add_column(:plan_limits, :group_ci_variables, :integer, {:default=>200, :null=>false})2127main: -> 0.0013s2128main: == 20220524164122 LimitProjectAndGroupVariables: migrated (0.0035s) ===========2129main: == 20220524184149 CreateSyncProjectNamespaceDetailsTrigger: migrating =========2130main: -- execute("CREATE OR REPLACE FUNCTION update_namespace_details_from_projects()\nRETURNS TRIGGER AS\n$$\nBEGIN\nINSERT INTO\n namespace_details (\n description,\n description_html,\n cached_markdown_version,\n updated_at,\n created_at,\n namespace_id\n )\nVALUES\n (\n NEW.description,\n NEW.description_html,\n NEW.cached_markdown_version,\n NEW.updated_at,\n NEW.updated_at,\n NEW.project_namespace_id\n ) ON CONFLICT (namespace_id) DO\nUPDATE\nSET\n description = NEW.description,\n description_html = NEW.description_html,\n cached_markdown_version = NEW.cached_markdown_version,\n updated_at = NEW.updated_at\nWHERE\n namespace_details.namespace_id = NEW.project_namespace_id;RETURN NULL;\n\nEND\n$$ LANGUAGE PLPGSQL\n")2131main: -> 0.0009s2132main: -- execute("CREATE TRIGGER trigger_update_details_on_project_update\nAFTER UPDATE ON projects\nFOR EACH ROW\nWHEN (\n OLD.description IS DISTINCT FROM NEW.description OR\n OLD.description_html IS DISTINCT FROM NEW.description_html OR\n OLD.cached_markdown_version IS DISTINCT FROM NEW.cached_markdown_version\n)\nEXECUTE PROCEDURE update_namespace_details_from_projects();\n")2133main: -> 0.0009s2134main: -- execute("CREATE TRIGGER trigger_update_details_on_project_insert\nAFTER INSERT ON projects\nFOR EACH ROW\nEXECUTE PROCEDURE update_namespace_details_from_projects();\n")2135main: -> 0.0008s2136main: == 20220524184149 CreateSyncProjectNamespaceDetailsTrigger: migrated (0.0030s) 2137main: == 20220524191259 AddApplicationSettingsContainerRegistryPreImportTagsRateConstraint: migrating 2138main: -- transaction_open?()2139main: -> 0.0000s2140main: -- current_schema()2141main: -> 0.0005s2142main: -- transaction_open?()2143main: -> 0.0000s2144main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT app_settings_container_registry_pre_import_tags_rate_positive\nCHECK ( container_registry_pre_import_tags_rate >= 0 )\nNOT VALID;\n")2145main: -> 0.0017s2146main: -- current_schema()2147main: -> 0.0005s2148main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT app_settings_container_registry_pre_import_tags_rate_positive;")2149main: -> 0.0013s2150main: == 20220524191259 AddApplicationSettingsContainerRegistryPreImportTagsRateConstraint: migrated (0.0104s) 2151main: == 20220524202158 DropIndexOnDeploymentsOnCreatedAtClusterIdAndProjectId: migrating 2152main: -- transaction_open?()2153main: -> 0.0000s2154main: -- view_exists?(:postgres_partitions)2155main: -> 0.0010s2156main: -- indexes(:deployments)2157main: -> 0.0179s2158main: -- remove_index(:deployments, {:algorithm=>:concurrently, :name=>"tp_index_created_at_cluster_id_project_id_on_deployments"})2159main: -> 0.0013s2160main: == 20220524202158 DropIndexOnDeploymentsOnCreatedAtClusterIdAndProjectId: migrated (0.0266s) 2161main: == 20220525082303 CreateIssuableResourceLinks: migrating ======================2162main: -- create_table(:issuable_resource_links, {})2163main: -- quote_column_name(:link_text)2164main: -> 0.0000s2165main: -- quote_column_name(:link)2166main: -> 0.0000s2167main: -> 0.0055s2168main: == 20220525082303 CreateIssuableResourceLinks: migrated (0.0058s) =============2169main: == 20220525084153 AddSentryProjectIdToProjectErrorTrackingSettings: migrating =2170main: -- add_column(:project_error_tracking_settings, :sentry_project_id, :bigint)2171main: -> 0.0014s2172main: == 20220525084153 AddSentryProjectIdToProjectErrorTrackingSettings: migrated (0.0017s) 2173main: == 20220525123825 AddRawToCiPipelineVariables: migrating ======================2174main: -- add_column(:ci_pipeline_variables, :raw, :boolean, {:null=>false, :default=>true})2175main: -> 0.0014s2176main: == 20220525123825 AddRawToCiPipelineVariables: migrated (0.0016s) =============2177main: == 20220525123851 AddRawToCiGroupVariables: migrating =========================2178main: -- add_column(:ci_group_variables, :raw, :boolean, {:null=>false, :default=>true})2179main: -> 0.0014s2180main: == 20220525123851 AddRawToCiGroupVariables: migrated (0.0016s) ================2181main: == 20220525123914 AddRawToCiInstanceVariables: migrating ======================2182main: -- add_column(:ci_instance_variables, :raw, :boolean, {:null=>false, :default=>true})2183main: -> 0.0014s2184main: == 20220525123914 AddRawToCiInstanceVariables: migrated (0.0017s) =============2185main: == 20220525123940 AddRawToCiJobVariables: migrating ===========================2186main: -- add_column(:ci_job_variables, :raw, :boolean, {:null=>false, :default=>true})2187main: -> 0.0013s2188main: == 20220525123940 AddRawToCiJobVariables: migrated (0.0016s) ==================2189main: == 20220525124104 AddRawToCiPipelineScheduleVariables: migrating ==============2190main: -- add_column(:ci_pipeline_schedule_variables, :raw, :boolean, {:null=>false, :default=>true})2191main: -> 0.0013s2192main: == 20220525124104 AddRawToCiPipelineScheduleVariables: migrated (0.0016s) =====2193main: == 20220525124125 AddRawToCiVariables: migrating ==============================2194main: -- add_column(:ci_variables, :raw, :boolean, {:null=>false, :default=>true})2195main: -> 0.0013s2196main: == 20220525124125 AddRawToCiVariables: migrated (0.0015s) =====================2197main: == 20220525131557 CleanupBackfillIntegrationsEnableSslVerification: migrating =2198main: -- transaction_open?()2199main: -> 0.0000s2200main: == 20220525131557 CleanupBackfillIntegrationsEnableSslVerification: migrated (0.0051s) 2201main: == 20220525131624 DropTemporaryIndexForBackfillIntegrationsEnableSslVerification: migrating 2202main: -- transaction_open?()2203main: -> 0.0000s2204main: -- view_exists?(:postgres_partitions)2205main: -> 0.0010s2206main: -- indexes(:integrations)2207main: -> 0.0065s2208main: -- remove_index(:integrations, {:algorithm=>:concurrently, :name=>"tmp_index_integrations_on_id_where_type_droneci_or_teamcity"})2209main: -> 0.0013s2210main: == 20220525131624 DropTemporaryIndexForBackfillIntegrationsEnableSslVerification: migrated (0.0150s) 2211main: == 20220525141540 MigrateProjectServiceWorkerQueue: migrating =================2212main: == 20220525141540 MigrateProjectServiceWorkerQueue: migrated (0.0005s) ========2213main: == 20220525165334 MigrateIrkerWorkerQueue: migrating ==========================2214main: == 20220525165334 MigrateIrkerWorkerQueue: migrated (0.0004s) =================2215main: == 20220525172001 MigrateClusterIntegrationWorkerQueues: migrating ============2216main: == 20220525172001 MigrateClusterIntegrationWorkerQueues: migrated (0.0006s) ===2217main: == 20220525201022 AddTemporaryIndexForVulnerabilityReadsClusterAgentIdMigration: migrating 2218main: -- transaction_open?()2219main: -> 0.0000s2220main: -- view_exists?(:postgres_partitions)2221main: -> 0.0012s2222main: -- index_exists?(:vulnerability_reads, :id, {:name=>"tmp_index_cis_vulnerability_reads_on_id", :where=>"report_type = 7", :algorithm=>:concurrently})2223main: -> 0.0066s2224main: -- add_index(:vulnerability_reads, :id, {:name=>"tmp_index_cis_vulnerability_reads_on_id", :where=>"report_type = 7", :algorithm=>:concurrently})2225main: -> 0.0016s2226main: == 20220525201022 AddTemporaryIndexForVulnerabilityReadsClusterAgentIdMigration: migrated (0.0167s) 2227main: == 20220525221133 ScheduleBackfillVulnerabilityReadsClusterAgent: migrating ===2228main: == 20220525221133 ScheduleBackfillVulnerabilityReadsClusterAgent: migrated (0.0282s) 2229main: == 20220526042017 RemoveGeoLfsObjectDeletedEventReferences: migrating =========2230main: -- transaction_open?()2231main: -> 0.0000s2232main: -- remove_column(:geo_event_log, :lfs_object_deleted_event_id, :bigint)2233main: -> 0.0013s2234main: == 20220526042017 RemoveGeoLfsObjectDeletedEventReferences: migrated (0.0040s) 2235main: == 20220526044516 RemoveGeoLfsObjectDeletedEventsTable: migrating =============2236main: -- drop_table(:geo_lfs_object_deleted_events)2237main: -> 0.0016s2238main: == 20220526044516 RemoveGeoLfsObjectDeletedEventsTable: migrated (0.0018s) ====2239main: == 20220530044712 AddIndexForVulnerabilityReadsLocationImage: migrating =======2240main: -- transaction_open?()2241main: -> 0.0000s2242main: -- view_exists?(:postgres_partitions)2243main: -> 0.0011s2244main: -- index_exists?(:vulnerability_reads, [:project_id, :location_image], {:where=>"report_type in (2, 7) AND\nlocation_image IS NOT NULL\n", :name=>:index_vulnerability_reads_on_location_image_partial, :algorithm=>:concurrently})2245main: -> 0.0072s2246main: -- add_index(:vulnerability_reads, [:project_id, :location_image], {:where=>"report_type in (2, 7) AND\nlocation_image IS NOT NULL\n", :name=>:index_vulnerability_reads_on_location_image_partial, :algorithm=>:concurrently})2247main: -> 0.0016s2248main: == 20220530044712 AddIndexForVulnerabilityReadsLocationImage: migrated (0.0175s) 2249main: == 20220530074027 AddProjectIdIndexToJobArtifacts: migrating ==================2250main: -- transaction_open?()2251main: -> 0.0000s2252main: -- view_exists?(:postgres_partitions)2253main: -> 0.0011s2254main: -- index_exists?(:ci_job_artifacts, [:project_id, :id], {:name=>"index_ci_job_artifacts_on_project_id_and_id", :algorithm=>:concurrently})2255main: -> 0.0102s2256main: -- add_index(:ci_job_artifacts, [:project_id, :id], {:name=>"index_ci_job_artifacts_on_project_id_and_id", :algorithm=>:concurrently})2257main: -> 0.0016s2258main: == 20220530074027 AddProjectIdIndexToJobArtifacts: migrated (0.0235s) =========2259main: == 20220530082653 AddTraversalIdTypeGroupIndex: migrating =====================2260main: -- transaction_open?()2261main: -> 0.0000s2262main: -- view_exists?(:postgres_partitions)2263main: -> 0.0017s2264main: -- index_exists?(:namespaces, :traversal_ids, {:using=>:btree, :where=>"type='Group'", :name=>"index_namespaces_on_traversal_ids_for_groups_btree", :algorithm=>:concurrently})2265main: -> 0.0164s2266main: -- add_index(:namespaces, :traversal_ids, {:using=>:btree, :where=>"type='Group'", :name=>"index_namespaces_on_traversal_ids_for_groups_btree", :algorithm=>:concurrently})2267main: -> 0.0021s2268main: == 20220530082653 AddTraversalIdTypeGroupIndex: migrated (0.0288s) ============2269main: == 20220530103023 AddCreatedAtAndIdIndexToDeploymentApprovals: migrating ======2270main: -- transaction_open?()2271main: -> 0.0000s2272main: -- view_exists?(:postgres_partitions)2273main: -> 0.0011s2274main: -- index_exists?(:deployment_approvals, [:created_at, :id], {:name=>"index_deployment_approvals_on_created_at_and_id", :algorithm=>:concurrently})2275main: -> 0.0040s2276main: -- add_index(:deployment_approvals, [:created_at, :id], {:name=>"index_deployment_approvals_on_created_at_and_id", :algorithm=>:concurrently})2277main: -> 0.0016s2278main: == 20220530103023 AddCreatedAtAndIdIndexToDeploymentApprovals: migrated (0.0146s) 2279main: == 20220530104431 AddTimestampsToComplianceFrameworks: migrating ==============2280main: -- add_column(:compliance_management_frameworks, :created_at, :datetime_with_timezone, {:null=>true})2281main: -> 0.0015s2282main: -- add_column(:compliance_management_frameworks, :updated_at, :datetime_with_timezone, {:null=>true})2283main: -> 0.0008s2284main: == 20220530104431 AddTimestampsToComplianceFrameworks: migrated (0.0026s) =====2285main: == 20220530170915 AddIndexForVulnerabilityStateTransition: migrating ==========2286main: -- transaction_open?()2287main: -> 0.0000s2288main: -- view_exists?(:postgres_partitions)2289main: -> 0.0012s2290main: -- index_exists?(:vulnerability_state_transitions, [:vulnerability_id, :id], {:name=>"index_vulnerability_state_transitions_id_and_vulnerability_id", :algorithm=>:concurrently})2291main: -> 0.0026s2292main: -- add_index(:vulnerability_state_transitions, [:vulnerability_id, :id], {:name=>"index_vulnerability_state_transitions_id_and_vulnerability_id", :algorithm=>:concurrently})2293main: -> 0.0015s2294main: -- transaction_open?()2295main: -> 0.0000s2296main: -- view_exists?(:postgres_partitions)2297main: -> 0.0011s2298main: -- indexes(:vulnerability_state_transitions)2299main: -> 0.0035s2300main: -- remove_index(:vulnerability_state_transitions, {:algorithm=>:concurrently, :name=>"index_vulnerability_state_transitions_on_vulnerability_id"})2301main: -> 0.0014s2302main: == 20220530170915 AddIndexForVulnerabilityStateTransition: migrated (0.0256s) =2303main: == 20220531024142 TrackClustersDeletions: migrating ===========================2304main: -- execute("CREATE TRIGGER clusters_loose_fk_trigger\nAFTER DELETE ON clusters REFERENCING OLD TABLE AS old_table\nFOR EACH STATEMENT\nEXECUTE FUNCTION insert_into_loose_foreign_keys_deleted_records();\n")2305main: -> 0.0010s2306main: == 20220531024142 TrackClustersDeletions: migrated (0.0013s) ==================2307main: == 20220531024143 RemoveClustersDeploymentsClusterIdFk: migrating =============2308main: -- transaction_open?()2309main: -> 0.0000s2310main: -- foreign_keys(:deployments)2311main: -> 0.0034s2312main: -- transaction_open?()2313main: -> 0.0000s2314main: -- execute("LOCK TABLE clusters, deployments IN ACCESS EXCLUSIVE MODE")2315main: -> 0.0008s2316main: -- remove_foreign_key(:deployments, :clusters, {:name=>"fk_289bba3222"})2317main: -> 0.0045s2318main: == 20220531024143 RemoveClustersDeploymentsClusterIdFk: migrated (0.0123s) ====2319main: == 20220531024905 AddOperationsAccessLevelsToProjectFeature: migrating ========2320main: -- add_column(:project_features, :monitor_access_level, :integer, {:null=>false, :default=>20})2321main: -> 0.0018s2322main: -- add_column(:project_features, :infrastructure_access_level, :integer, {:null=>false, :default=>20})2323main: -> 0.0016s2324main: -- add_column(:project_features, :feature_flags_access_level, :integer, {:null=>false, :default=>20})2325main: -> 0.0013s2326main: -- add_column(:project_features, :environments_access_level, :integer, {:null=>false, :default=>20})2327main: -> 0.0014s2328main: -- add_column(:project_features, :releases_access_level, :integer, {:null=>false, :default=>20})2329main: -> 0.0014s2330main: == 20220531024905 AddOperationsAccessLevelsToProjectFeature: migrated (0.0082s) 2331main: == 20220531035113 PopulateOperationVisibilityPermissions: migrating ===========2332main: == 20220531035113 PopulateOperationVisibilityPermissions: migrated (0.0332s) ==2333main: == 20220531100920 AddLicenseUsageDataExportedToApplicationSettings: migrating =2334main: -- add_column(:application_settings, :license_usage_data_exported, :boolean, {:default=>false, :null=>false})2335main: -> 0.0029s2336main: == 20220531100920 AddLicenseUsageDataExportedToApplicationSettings: migrated (0.0031s) 2337main: == 20220531140515 AddAppliesToAllProtectedBranchesToApprovalProjectRule: migrating 2338main: -- add_column(:approval_project_rules, :applies_to_all_protected_branches, :boolean, {:default=>false, :null=>false})2339main: -> 0.0024s2340main: == 20220531140515 AddAppliesToAllProtectedBranchesToApprovalProjectRule: migrated (0.0027s) 2341main: == 20220531233600 RemoveSseUsageDataFromRedis: migrating ======================2342main: == 20220531233600 RemoveSseUsageDataFromRedis: migrated (0.0009s) =============2343main: == 20220601040233 FinalizeBackfillIssueSearchData: migrating ==================2344main: == 20220601040233 FinalizeBackfillIssueSearchData: migrated (0.0448s) =========2345main: == 20220601091804 AddSemverColumnToCiRunners: migrating =======================2346main: -- add_column(:ci_runners, :semver, :text, {:null=>true})2347main: -> 0.0017s2348main: == 20220601091804 AddSemverColumnToCiRunners: migrated (0.0020s) ==============2349main: == 20220601091805 AddTextLimitToCiRunnersSemver: migrating ====================2350main: -- transaction_open?()2351main: -> 0.0000s2352main: -- current_schema()2353main: -> 0.0007s2354main: -- transaction_open?()2355main: -> 0.0000s2356main: -- execute("ALTER TABLE ci_runners\nADD CONSTRAINT check_a4f24953fd\nCHECK ( char_length(semver) <= 16 )\nNOT VALID;\n")2357main: -> 0.0011s2358main: -- current_schema()2359main: -> 0.0005s2360main: -- execute("ALTER TABLE ci_runners VALIDATE CONSTRAINT check_a4f24953fd;")2361main: -> 0.0008s2362main: == 20220601091805 AddTextLimitToCiRunnersSemver: migrated (0.0105s) ===========2363main: == 20220601101800 AddIndexOnRunnerIdAndSemverColumns: migrating ===============2364main: -- transaction_open?()2365main: -> 0.0000s2366main: -- view_exists?(:postgres_partitions)2367main: -> 0.0014s2368main: -- index_exists?(:ci_runners, "id, (semver::cidr)", {:name=>"index_ci_runners_on_id_and_semver_cidr", :algorithm=>:concurrently})2369main: -> 0.0111s2370main: -- add_index(:ci_runners, "id, (semver::cidr)", {:name=>"index_ci_runners_on_id_and_semver_cidr", :algorithm=>:concurrently})2371main: -> 0.0018s2372main: == 20220601101800 AddIndexOnRunnerIdAndSemverColumns: migrated (0.0223s) ======2373main: == 20220601110011 ScheduleRemoveSelfManagedWikiNotes: migrating ===============2374main: == 20220601110011 ScheduleRemoveSelfManagedWikiNotes: migrated (0.0318s) ======2375main: == 20220601151900 ScheduleBackfillCiRunnerSemver: migrating ===================2376main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].2377main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared, :gitlab_internal, :gitlab_pm].2378main: == 20220601151900 ScheduleBackfillCiRunnerSemver: migrated (0.0002s) ==========2379main: == 20220601152916 AddUserIdAndIpAddressSuccessIndexToAuthenticationEvents: migrating 2380main: -- transaction_open?()2381main: -> 0.0000s2382main: -- view_exists?(:postgres_partitions)2383main: -> 0.0012s2384main: -- index_exists?(:authentication_events, [:user_id, :ip_address, :result], {:name=>"index_authentication_events_on_user_and_ip_address_and_result", :algorithm=>:concurrently})2385main: -> 0.0043s2386main: -- add_index(:authentication_events, [:user_id, :ip_address, :result], {:name=>"index_authentication_events_on_user_and_ip_address_and_result", :algorithm=>:concurrently})2387main: -> 0.0018s2388main: -- transaction_open?()2389main: -> 0.0000s2390main: -- view_exists?(:postgres_partitions)2391main: -> 0.0009s2392main: -- indexes(:authentication_events)2393main: -> 0.0044s2394main: -- remove_index(:authentication_events, {:algorithm=>:concurrently, :name=>"index_authentication_events_on_user_id"})2395main: -> 0.0014s2396main: == 20220601152916 AddUserIdAndIpAddressSuccessIndexToAuthenticationEvents: migrated (0.0281s) 2397main: == 20220601223501 AddVulnerabilityRelatedColumns: migrating ===================2398main: -- add_column(:approval_merge_request_rules, :vulnerabilities_allowed, :integer, {:limit=>2, :null=>false, :default=>0})2399main: -> 0.0023s2400main: -- add_column(:approval_merge_request_rules, :scanners, :text, {:array=>true, :null=>false, :default=>[]})2401main: -> 0.0014s2402main: -- add_column(:approval_merge_request_rules, :severity_levels, :text, {:array=>true, :null=>false, :default=>[]})2403main: -> 0.0014s2404main: -- add_column(:approval_merge_request_rules, :vulnerability_states, :text, {:array=>true, :null=>false, :default=>["newly_detected"]})2405main: -> 0.0014s2406main: == 20220601223501 AddVulnerabilityRelatedColumns: migrated (0.0073s) ==========2407main: == 20220602070502 QueueBackfillProjectFeaturePackageRegistryAccessLevel: migrating 2408main: == 20220602070502 QueueBackfillProjectFeaturePackageRegistryAccessLevel: migrated (0.0346s) 2409main: == 20220602111923 PrepareIndexForOpenIssuesCount: migrating ===================2410main: -- index_exists?(:issues, [:project_id, :confidential], {:where=>"state_id = 1", :name=>"idx_open_issues_on_project_id_and_confidential", :algorithm=>:concurrently})2411main: -> 0.0224s2412main: -- add_index_options(:issues, [:project_id, :confidential], {:where=>"state_id = 1", :name=>"idx_open_issues_on_project_id_and_confidential", :algorithm=>:concurrently})2413main: -> 0.0001s2414main: == 20220602111923 PrepareIndexForOpenIssuesCount: migrated (0.0294s) ==========2415main: == 20220602130306 AddNamespaceTypeIndex: migrating ============================2416main: -- transaction_open?()2417main: -> 0.0000s2418main: -- view_exists?(:postgres_partitions)2419main: -> 0.0012s2420main: -- index_exists?(:namespaces, [:parent_id, :id], {:where=>"type = 'Group'", :name=>"index_groups_on_parent_id_id", :algorithm=>:concurrently})2421main: -> 0.0171s2422main: -- add_index(:namespaces, [:parent_id, :id], {:where=>"type = 'Group'", :name=>"index_groups_on_parent_id_id", :algorithm=>:concurrently})2423main: -> 0.0022s2424main: == 20220602130306 AddNamespaceTypeIndex: migrated (0.0288s) ===================2425main: == 20220603095158 DropCiBuildReportResultsBuildIdSequence: migrating ==========2426main: -- quote_table_name(:ci_build_report_results)2427main: -> 0.0000s2428main: -- quote_column_name(:build_id)2429main: -> 0.0000s2430main: -- quote_table_name(:ci_build_report_results_build_id_seq)2431main: -> 0.0000s2432main: -- execute("ALTER TABLE \"ci_build_report_results\" ALTER COLUMN \"build_id\" DROP DEFAULT;\nDROP SEQUENCE IF EXISTS \"ci_build_report_results_build_id_seq\"\n")2433main: -> 0.0012s2434main: == 20220603095158 DropCiBuildReportResultsBuildIdSequence: migrated (0.0015s) =2435main: == 20220603125200 AddShowDiffPreviewInEmailToNamespaceSettings: migrating =====2436main: -- add_column(:namespace_settings, :show_diff_preview_in_email, :boolean, {:default=>true, :null=>false})2437main: -> 0.0015s2438main: == 20220603125200 AddShowDiffPreviewInEmailToNamespaceSettings: migrated (0.0017s) 2439main: == 20220603173103 UpdateVulnerabilitiesProjectIdIdIndex: migrating ============2440main: -- transaction_open?()2441main: -> 0.0000s2442main: -- view_exists?(:postgres_partitions)2443main: -> 0.0011s2444main: -- index_exists?(:vulnerabilities, [:project_id, :created_at, :present_on_default_branch], {:where=>"state != 1", :name=>"idx_vulnerabilities_partial_devops_adoption_and_default_branch", :algorithm=>:concurrently})2445main: -> 0.0122s2446main: -- add_index(:vulnerabilities, [:project_id, :created_at, :present_on_default_branch], {:where=>"state != 1", :name=>"idx_vulnerabilities_partial_devops_adoption_and_default_branch", :algorithm=>:concurrently})2447main: -> 0.0019s2448main: -- transaction_open?()2449main: -> 0.0000s2450main: -- view_exists?(:postgres_partitions)2451main: -> 0.0010s2452main: -- indexes(:vulnerabilities)2453main: -> 0.0141s2454main: -- remove_index(:vulnerabilities, {:algorithm=>:concurrently, :name=>"idx_vulnerabilities_partial_devops_adoption"})2455main: -> 0.0013s2456main: == 20220603173103 UpdateVulnerabilitiesProjectIdIdIndex: migrated (0.0460s) ===2457main: == 20220605170009 AddUrlVarsToWebHook: migrating ==============================2458main: -- add_column(:web_hooks, :encrypted_url_variables, :binary)2459main: -> 0.0015s2460main: -- add_column(:web_hooks, :encrypted_url_variables_iv, :binary)2461main: -> 0.0008s2462main: == 20220605170009 AddUrlVarsToWebHook: migrated (0.0026s) =====================2463main: == 20220606054503 AddTmpIndexJobArtifactsIdAndExpireAt: migrating =============2464main: -- indexes(:ci_job_artifacts)2465main: -> 0.0113s2466main: -- current_schema()2467main: -> 0.0004s2468main: -- transaction_open?()2469main: -> 0.0000s2470main: -- view_exists?(:postgres_partitions)2471main: -> 0.0009s2472main: -- index_exists?(:ci_job_artifacts, :id, {:where=>"(EXTRACT(day FROM timezone('UTC', expire_at)) IN (21, 22, 23)\nAND EXTRACT(minute FROM timezone('UTC', expire_at)) IN (0, 30, 45)\nAND EXTRACT(second FROM timezone('UTC', expire_at)) = 0)\nOR file_type = 3\n", :name=>"tmp_index_ci_job_artifacts_on_id_expire_at_file_type_trace", :algorithm=>:concurrently})2473main: -> 0.0107s2474main: -- add_index(:ci_job_artifacts, :id, {:where=>"(EXTRACT(day FROM timezone('UTC', expire_at)) IN (21, 22, 23)\nAND EXTRACT(minute FROM timezone('UTC', expire_at)) IN (0, 30, 45)\nAND EXTRACT(second FROM timezone('UTC', expire_at)) = 0)\nOR file_type = 3\n", :name=>"tmp_index_ci_job_artifacts_on_id_expire_at_file_type_trace", :algorithm=>:concurrently})2475main: -> 0.0025s2476main: == 20220606054503 AddTmpIndexJobArtifactsIdAndExpireAt: migrated (0.0356s) ====2477main: == 20220606060825 SetOnDeleteCascadeOnNamespaceIdOnRoutesTable: migrating =====2478main: -- transaction_open?()2479main: -> 0.0000s2480main: -- foreign_keys(:routes)2481main: -> 0.0034s2482main: -- transaction_open?()2483main: -> 0.0000s2484main: -- execute("ALTER TABLE routes\nADD CONSTRAINT fk_bb2e5b8968\nFOREIGN KEY (namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")2485main: -> 0.0015s2486main: -- execute("ALTER TABLE routes VALIDATE CONSTRAINT fk_bb2e5b8968;")2487main: -> 0.0014s2488main: -- transaction_open?()2489main: -> 0.0000s2490main: -- foreign_keys(:routes)2491main: -> 0.0033s2492main: -- remove_foreign_key(:routes, {:column=>:namespace_id, :name=>"fk_679ff8213d"})2493main: -> 0.0046s2494main: == 20220606060825 SetOnDeleteCascadeOnNamespaceIdOnRoutesTable: migrated (0.0218s) 2495main: == 20220606060850 AddNotNullConstraintOnRoutesNamespaceId: migrating ==========2496main: -- current_schema()2497main: -> 0.0006s2498main: -- transaction_open?()2499main: -> 0.0000s2500main: -- current_schema()2501main: -> 0.0005s2502main: -- transaction_open?()2503main: -> 0.0000s2504main: -- execute("ALTER TABLE routes\nADD CONSTRAINT check_af84c6c93f\nCHECK ( namespace_id IS NOT NULL )\nNOT VALID;\n")2505main: -> 0.0010s2506main: == 20220606060850 AddNotNullConstraintOnRoutesNamespaceId: migrated (0.0108s) =2507main: == 20220606080509 FixIncorrectJobArtifactsExpireAt: migrating =================2508main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].2509main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared, :gitlab_internal, :gitlab_pm].2510main: == 20220606080509 FixIncorrectJobArtifactsExpireAt: migrated (0.0002s) ========2511main: == 20220606082910 AddTmpIndexForPotentiallyMisassociatedVulnerabilityOccurrences: migrating 2512main: -- index_exists?(:vulnerability_occurrences, [:id, :scanner_id], {:where=>"report_type IN (7,99)", :name=>"tmp_index_vulnerability_occurrences_on_id_and_scanner_id", :algorithm=>:concurrently})2513main: -> 0.0070s2514main: -- add_index_options(:vulnerability_occurrences, [:id, :scanner_id], {:where=>"report_type IN (7,99)", :name=>"tmp_index_vulnerability_occurrences_on_id_and_scanner_id", :algorithm=>:concurrently})2515main: -> 0.0002s2516main: == 20220606082910 AddTmpIndexForPotentiallyMisassociatedVulnerabilityOccurrences: migrated (0.0149s) 2517main: == 20220607011733 AddPhoneVerificationCodeEnabledToApplicationSettings: migrating 2518main: -- add_column(:application_settings, :phone_verification_code_enabled, :boolean, {:null=>false, :default=>false, :comment=>"JiHu-specific column"})2519main: -> 0.0037s2520main: == 20220607011733 AddPhoneVerificationCodeEnabledToApplicationSettings: migrated (0.0039s) 2521main: == 20220607082910 AddSyncTmpIndexForPotentiallyMisassociatedVulnerabilityOccurrences: migrating 2522main: -- transaction_open?()2523main: -> 0.0000s2524main: -- view_exists?(:postgres_partitions)2525main: -> 0.0012s2526main: -- index_exists?(:vulnerability_occurrences, [:id, :scanner_id], {:where=>"report_type IN (7,99)", :name=>"tmp_index_vulnerability_occurrences_on_id_and_scanner_id", :algorithm=>:concurrently})2527main: -> 0.0066s2528main: -- add_index(:vulnerability_occurrences, [:id, :scanner_id], {:where=>"report_type IN (7,99)", :name=>"tmp_index_vulnerability_occurrences_on_id_and_scanner_id", :algorithm=>:concurrently})2529main: -> 0.0020s2530main: == 20220607082910 AddSyncTmpIndexForPotentiallyMisassociatedVulnerabilityOccurrences: migrated (0.0199s) 2531main: == 20220607095219 DropCiPipelinesConfigPipelineIdSequence: migrating ==========2532main: -- quote_table_name(:ci_pipelines_config)2533main: -> 0.0000s2534main: -- quote_column_name(:pipeline_id)2535main: -> 0.0000s2536main: -- quote_table_name(:ci_pipelines_config_pipeline_id_seq)2537main: -> 0.0000s2538main: -- execute("ALTER TABLE \"ci_pipelines_config\" ALTER COLUMN \"pipeline_id\" DROP DEFAULT;\nDROP SEQUENCE IF EXISTS \"ci_pipelines_config_pipeline_id_seq\"\n")2539main: -> 0.0012s2540main: == 20220607095219 DropCiPipelinesConfigPipelineIdSequence: migrated (0.0018s) =2541main: == 20220607115703 DropCiJobArtifactStatesJobArtifactIdSequence: migrating =====2542main: -- quote_table_name(:ci_job_artifact_states)2543main: -> 0.0000s2544main: -- quote_column_name(:job_artifact_id)2545main: -> 0.0000s2546main: -- quote_table_name(:ci_job_artifact_states_job_artifact_id_seq)2547main: -> 0.0000s2548main: -- execute("ALTER TABLE \"ci_job_artifact_states\" ALTER COLUMN \"job_artifact_id\" DROP DEFAULT;\nDROP SEQUENCE IF EXISTS \"ci_job_artifact_states_job_artifact_id_seq\"\n")2549main: -> 0.0015s2550main: == 20220607115703 DropCiJobArtifactStatesJobArtifactIdSequence: migrated (0.0021s) 2551main: == 20220607140222 RemoveInvalidIntegrations: migrating ========================2552main: == 20220607140222 RemoveInvalidIntegrations: migrated (0.0030s) ===============2553main: == 20220608074738 AddMaxRepositoryDownloadsLimitToApplicationSettings: migrating 2554main: -- add_column(:application_settings, :max_number_of_repository_downloads, :smallint, {:default=>0, :null=>false})2555main: -> 0.0030s2556main: -- add_column(:application_settings, :max_number_of_repository_downloads_within_time_period, :integer, {:default=>0, :null=>false})2557main: -> 0.0019s2558main: == 20220608074738 AddMaxRepositoryDownloadsLimitToApplicationSettings: migrated (0.0051s) 2559main: == 20220608114734 PrepareConfidentialNoteIndexOnId: migrating =================2560main: -- index_exists?(:notes, :id, {:where=>"confidential = true", :name=>"index_notes_on_id_where_confidential", :algorithm=>:concurrently})2561main: -> 0.0091s2562main: -- add_index_options(:notes, :id, {:where=>"confidential = true", :name=>"index_notes_on_id_where_confidential", :algorithm=>:concurrently})2563main: -> 0.0001s2564main: == 20220608114734 PrepareConfidentialNoteIndexOnId: migrated (0.0150s) ========2565main: == 20220609150626 AddPartialIndexOnSlackIntegrationsWithBotUserId: migrating ==2566main: -- transaction_open?()2567main: -> 0.0000s2568main: -- view_exists?(:postgres_partitions)2569main: -> 0.0014s2570main: -- index_exists?(:slack_integrations, :id, {:name=>"partial_index_slack_integrations_with_bot_user_id", :where=>"bot_user_id IS NOT NULL", :algorithm=>:concurrently})2571main: -> 0.0032s2572main: -- add_index(:slack_integrations, :id, {:name=>"partial_index_slack_integrations_with_bot_user_id", :where=>"bot_user_id IS NOT NULL", :algorithm=>:concurrently})2573main: -> 0.0014s2574main: == 20220609150626 AddPartialIndexOnSlackIntegrationsWithBotUserId: migrated (0.0131s) 2575main: == 20220609195803 RemoveDeploymentClustersClusterIdFk: migrating ==============2576main: -- transaction_open?()2577main: -> 0.0000s2578main: -- foreign_keys(:deployment_clusters)2579main: -> 0.0030s2580main: -- transaction_open?()2581main: -> 0.0000s2582main: -- execute("LOCK TABLE clusters, deployment_clusters IN ACCESS EXCLUSIVE MODE")2583main: -> 0.0006s2584main: -- remove_foreign_key(:deployment_clusters, :clusters, {:name=>"fk_rails_4e6243e120"})2585main: -> 0.0039s2586main: == 20220609195803 RemoveDeploymentClustersClusterIdFk: migrated (0.0106s) =====2587main: == 20220610074326 AddEpicIssueWeight: migrating ===============================2588main: -- add_column(:epics, :total_opened_issue_weight, :integer, {:default=>0, :null=>false})2589main: -> 0.0022s2590main: -- add_column(:epics, :total_closed_issue_weight, :integer, {:default=>0, :null=>false})2591main: -> 0.0014s2592main: -- add_column(:epics, :total_opened_issue_count, :integer, {:default=>0, :null=>false})2593main: -> 0.0014s2594main: -- add_column(:epics, :total_closed_issue_count, :integer, {:default=>0, :null=>false})2595main: -> 0.0013s2596main: == 20220610074326 AddEpicIssueWeight: migrated (0.0067s) ======================2597main: == 20220610125248 AddEnabledGitAccessProtocolToNamespaceSettings: migrating ===2598main: -- add_column(:namespace_settings, :enabled_git_access_protocol, :integer, {:default=>0, :null=>false, :limit=>2})2599main: -> 0.0021s2600main: == 20220610125248 AddEnabledGitAccessProtocolToNamespaceSettings: migrated (0.0023s) 2601main: == 20220610140605 ChangePublicProjectsCostFactor: migrating ===================2602main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].2603main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared, :gitlab_internal, :gitlab_pm].2604main: == 20220610140605 ChangePublicProjectsCostFactor: migrated (0.0003s) ==========2605main: == 20220610223040 AddIndexOnAvailablePypiPackages: migrating ==================2606main: -- transaction_open?()2607main: -> 0.0000s2608main: -- view_exists?(:postgres_partitions)2609main: -> 0.0012s2610main: -- index_exists?(:packages_packages, [:project_id, :id], {:where=>"status IN (0,1) AND package_type = 5 AND version IS NOT NULL", :name=>"index_packages_on_available_pypi_packages", :algorithm=>:concurrently})2611main: -> 0.0128s2612main: -- add_index(:packages_packages, [:project_id, :id], {:where=>"status IN (0,1) AND package_type = 5 AND version IS NOT NULL", :name=>"index_packages_on_available_pypi_packages", :algorithm=>:concurrently})2613main: -> 0.0021s2614main: == 20220610223040 AddIndexOnAvailablePypiPackages: migrated (0.0242s) =========2615main: == 20220613054349 AddUniqueProjectDownloadLimitSettingsToNamespaceSettings: migrating 2616main: -- add_column(:namespace_settings, :unique_project_download_limit, :smallint, {:default=>0, :null=>false})2617main: -> 0.0017s2618main: -- add_column(:namespace_settings, :unique_project_download_limit_interval_in_seconds, :integer, {:default=>0, :null=>false})2619main: -> 0.0015s2620main: == 20220613054349 AddUniqueProjectDownloadLimitSettingsToNamespaceSettings: migrated (0.0034s) 2621main: == 20220613095911 CreateConfidentialNotesIndexOnId: migrating =================2622main: -- transaction_open?()2623main: -> 0.0000s2624main: -- view_exists?(:postgres_partitions)2625main: -> 0.0012s2626main: -- indexes(:notes)2627main: -> 0.0105s2628main: -- remove_index(:notes, {:algorithm=>:concurrently, :name=>"index_notes_on_confidential"})2629main: -> 0.0014s2630main: -- transaction_open?()2631main: -> 0.0000s2632main: -- view_exists?(:postgres_partitions)2633main: -> 0.0011s2634main: -- index_exists?(:notes, :id, {:where=>"confidential = true", :name=>"index_notes_on_id_where_confidential", :algorithm=>:concurrently})2635main: -> 0.0091s2636main: -- add_index(:notes, :id, {:where=>"confidential = true", :name=>"index_notes_on_id_where_confidential", :algorithm=>:concurrently})2637main: -> 0.0017s2638main: == 20220613095911 CreateConfidentialNotesIndexOnId: migrated (0.0421s) ========2639main: == 20220613112029 AddNamespaceIdToProtectedBranches: migrating ================2640main: -- add_column(:protected_branches, :namespace_id, :bigint)2641main: -> 0.0010s2642main: == 20220613112029 AddNamespaceIdToProtectedBranches: migrated (0.0012s) =======2643main: == 20220613112030 AddNamespaceIdIndexesForeignKeyToProtectedBranches: migrating 2644main: -- transaction_open?()2645main: -> 0.0000s2646main: -- view_exists?(:postgres_partitions)2647main: -> 0.0011s2648main: -- index_exists?(:protected_branches, :namespace_id, {:name=>"index_protected_branches_namespace_id", :where=>"namespace_id IS NOT NULL", :algorithm=>:concurrently})2649main: -> 0.0033s2650main: -- add_index(:protected_branches, :namespace_id, {:name=>"index_protected_branches_namespace_id", :where=>"namespace_id IS NOT NULL", :algorithm=>:concurrently})2651main: -> 0.0015s2652main: -- transaction_open?()2653main: -> 0.0000s2654main: -- foreign_keys(:protected_branches)2655main: -> 0.0030s2656main: -- transaction_open?()2657main: -> 0.0000s2658main: -- execute("ALTER TABLE protected_branches\nADD CONSTRAINT fk_de9216e774\nFOREIGN KEY (namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")2659main: -> 0.0015s2660main: -- execute("ALTER TABLE protected_branches VALIDATE CONSTRAINT fk_de9216e774;")2661main: -> 0.0013s2662main: == 20220613112030 AddNamespaceIdIndexesForeignKeyToProtectedBranches: migrated (0.0227s) 2663main: == 20220613112031 AddGroupOrProjectConstraintInProtectedBranches: migrating ===2664main: -- transaction_open?()2665main: -> 0.0000s2666main: -- current_schema()2667main: -> 0.0004s2668main: -- transaction_open?()2669main: -> 0.0000s2670main: -- execute("ALTER TABLE protected_branches\nADD CONSTRAINT protected_branches_project_id_namespace_id_any_not_null\nCHECK ( (project_id IS NULL) <> (namespace_id IS NULL)\n )\nNOT VALID;\n")2671main: -> 0.0010s2672main: -- current_schema()2673main: -> 0.0005s2674main: -- execute("ALTER TABLE protected_branches VALIDATE CONSTRAINT protected_branches_project_id_namespace_id_any_not_null;")2675main: -> 0.0008s2676main: == 20220613112031 AddGroupOrProjectConstraintInProtectedBranches: migrated (0.0093s) 2677main: == 20220613112032 ChangeProjectIdNullInProtectedBranches: migrating ===========2678main: -- change_column_null(:protected_branches, :project_id, true)2679main: -> 0.0008s2680main: == 20220613112032 ChangeProjectIdNullInProtectedBranches: migrated (0.0010s) ==2681main: == 20220614095912 AddHasVulnerabilitiesToClusterAgents: migrating =============2682main: -- add_column(:cluster_agents, :has_vulnerabilities, :boolean, {:default=>false, :null=>false})2683main: -> 0.0017s2684main: == 20220614095912 AddHasVulnerabilitiesToClusterAgents: migrated (0.0019s) ====2685main: == 20220614120415 AddToggleOptInJwt: migrating ================================2686main: -- add_column(:project_ci_cd_settings, :opt_in_jwt, :boolean, {:default=>false, :null=>false})2687main: -> 0.0021s2688main: == 20220614120415 AddToggleOptInJwt: migrated (0.0023s) =======================2689main: == 20220614185644 UpdateIndexVulnerabilitiesProjectIdId: migrating ============2690main: -- transaction_open?()2691main: -> 0.0000s2692main: -- view_exists?(:postgres_partitions)2693main: -> 0.0013s2694main: -- index_exists?(:vulnerabilities, [:project_id, :id], {:where=>"present_on_default_branch IS TRUE", :name=>"index_vulnerabilities_project_id_and_id_on_default_branch", :algorithm=>:concurrently})2695main: -> 0.0126s2696main: -- add_index(:vulnerabilities, [:project_id, :id], {:where=>"present_on_default_branch IS TRUE", :name=>"index_vulnerabilities_project_id_and_id_on_default_branch", :algorithm=>:concurrently})2697main: -> 0.0019s2698main: -- transaction_open?()2699main: -> 0.0000s2700main: -- view_exists?(:postgres_partitions)2701main: -> 0.0010s2702main: -- indexes(:vulnerabilities)2703main: -> 0.0126s2704main: -- remove_index(:vulnerabilities, {:algorithm=>:concurrently, :name=>"index_vulnerabilities_on_project_id_and_id"})2705main: -> 0.0014s2706main: == 20220614185644 UpdateIndexVulnerabilitiesProjectIdId: migrated (0.0459s) ===2707main: == 20220615091059 AddCreatedAtIndexToComplianceManagementFrameworks: migrating 2708main: -- transaction_open?()2709main: -> 0.0000s2710main: -- view_exists?(:postgres_partitions)2711main: -> 0.0011s2712main: -- index_exists?(:compliance_management_frameworks, [:id, :created_at, :pipeline_configuration_full_path], {:name=>"i_compliance_frameworks_on_id_and_created_at", :algorithm=>:concurrently})2713main: -> 0.0031s2714main: -- add_index(:compliance_management_frameworks, [:id, :created_at, :pipeline_configuration_full_path], {:name=>"i_compliance_frameworks_on_id_and_created_at", :algorithm=>:concurrently})2715main: -> 0.0028s2716main: == 20220615091059 AddCreatedAtIndexToComplianceManagementFrameworks: migrated (0.0146s) 2717main: == 20220615105811 AddIndexOnClustersAgentProjectIdAndHasVulnerabilitiesColumns: migrating 2718main: -- transaction_open?()2719main: -> 0.0000s2720main: -- view_exists?(:postgres_partitions)2721main: -> 0.0010s2722main: -- index_exists?(:cluster_agents, [:project_id, :has_vulnerabilities], {:name=>"index_cluster_agents_on_project_id_and_has_vulnerabilities", :algorithm=>:concurrently})2723main: -> 0.0031s2724main: -- add_index(:cluster_agents, [:project_id, :has_vulnerabilities], {:name=>"index_cluster_agents_on_project_id_and_has_vulnerabilities", :algorithm=>:concurrently})2725main: -> 0.0015s2726main: == 20220615105811 AddIndexOnClustersAgentProjectIdAndHasVulnerabilitiesColumns: migrated (0.0128s) 2727main: == 20220615154500 ScheduleBackfillClusterAgentsHasVulnerabilities: migrating ==2728main: == 20220615154500 ScheduleBackfillClusterAgentsHasVulnerabilities: migrated (0.0493s) 2729main: == 20220615172230 AddUserPreferenceToTurnOffAutomaticLists: migrating =========2730main: -- add_column(:user_preferences, :markdown_automatic_lists, :boolean, {:default=>true, :null=>false})2731main: -> 0.0017s2732main: == 20220615172230 AddUserPreferenceToTurnOffAutomaticLists: migrated (0.0020s) 2733main: == 20220616092541 PrepareIndexIssuesOnProjectIdAndClosedAt: migrating =========2734main: -- index_exists?(:issues, "project_id, closed_at DESC NULLS LAST, state_id, id", {:name=>"index_issues_on_project_id_closed_at_desc_state_id_and_id", :algorithm=>:concurrently})2735main: -> 0.0207s2736main: -- add_index_options(:issues, "project_id, closed_at DESC NULLS LAST, state_id, id", {:name=>"index_issues_on_project_id_closed_at_desc_state_id_and_id", :algorithm=>:concurrently})2737main: -> 0.0000s2738main: -- index_exists?(:issues, [:project_id, :closed_at, :state_id, :id], {:name=>"index_issues_on_project_id_closed_at_state_id_and_id", :algorithm=>:concurrently})2739main: -> 0.0217s2740main: -- add_index_options(:issues, [:project_id, :closed_at, :state_id, :id], {:name=>"index_issues_on_project_id_closed_at_state_id_and_id", :algorithm=>:concurrently})2741main: -> 0.0000s2742main: == 20220616092541 PrepareIndexIssuesOnProjectIdAndClosedAt: migrated (0.0543s) 2743main: == 20220616171355 UpdateVulnerabilitiesProjectIdIdActiveCisIndex: migrating ===2744main: -- transaction_open?()2745main: -> 0.0001s2746main: -- view_exists?(:postgres_partitions)2747main: -> 0.0013s2748main: -- index_exists?(:vulnerabilities, [:project_id, :id], {:where=>"report_type = 7 AND state = ANY(ARRAY[1, 4]) AND present_on_default_branch IS TRUE", :name=>"idx_vulnerabilities_on_project_id_and_id_active_cis_dft_branch", :algorithm=>:concurrently})2749main: -> 0.0116s2750main: -- add_index(:vulnerabilities, [:project_id, :id], {:where=>"report_type = 7 AND state = ANY(ARRAY[1, 4]) AND present_on_default_branch IS TRUE", :name=>"idx_vulnerabilities_on_project_id_and_id_active_cis_dft_branch", :algorithm=>:concurrently})2751main: -> 0.0019s2752main: -- transaction_open?()2753main: -> 0.0000s2754main: -- view_exists?(:postgres_partitions)2755main: -> 0.0010s2756main: -- indexes(:vulnerabilities)2757main: -> 0.0131s2758main: -- remove_index(:vulnerabilities, {:algorithm=>:concurrently, :name=>"index_vulnerabilities_on_project_id_and_id_active_cis"})2759main: -> 0.0013s2760main: == 20220616171355 UpdateVulnerabilitiesProjectIdIdActiveCisIndex: migrated (0.0442s) 2761main: == 20220616182001 CreateSbomComponents: migrating =============================2762main: -- create_table(:sbom_components, {})2763main: -- quote_column_name(:name)2764main: -> 0.0000s2765main: -> 0.0033s2766main: == 20220616182001 CreateSbomComponents: migrated (0.0036s) ====================2767main: == 20220616182015 CreateSbomComponentVersions: migrating ======================2768main: -- create_table(:sbom_component_versions, {})2769main: -- quote_column_name(:version)2770main: -> 0.0000s2771main: -> 0.0042s2772main: == 20220616182015 CreateSbomComponentVersions: migrated (0.0044s) =============2773main: == 20220616182016 CreateSbomSources: migrating ================================2774main: -- create_table(:sbom_sources, {})2775main: -> 0.0033s2776main: == 20220616182016 CreateSbomSources: migrated (0.0035s) =======================2777main: == 20220616182038 CreateSbomOccurrences: migrating ============================2778main: -- create_table(:sbom_occurrences, {})2779main: -> 0.0063s2780main: == 20220616182038 CreateSbomOccurrences: migrated (0.0065s) ===================2781main: == 20220616183240 AddSbomComponentVersionsForeignKeyToSbomOccurrences: migrating 2782main: -- transaction_open?()2783main: -> 0.0000s2784main: -- foreign_keys(:sbom_occurrences)2785main: -> 0.0036s2786main: -- transaction_open?()2787main: -> 0.0000s2788main: -- execute("ALTER TABLE sbom_occurrences\nADD CONSTRAINT fk_4b88e5b255\nFOREIGN KEY (component_version_id)\nREFERENCES sbom_component_versions (id)\nON DELETE CASCADE\nNOT VALID;\n")2789main: -> 0.0011s2790main: -- execute("ALTER TABLE sbom_occurrences VALIDATE CONSTRAINT fk_4b88e5b255;")2791main: -> 0.0011s2792main: == 20220616183240 AddSbomComponentVersionsForeignKeyToSbomOccurrences: migrated (0.0097s) 2793main: == 20220616183309 AddSbomSourceForeignKeyToSbomOccurrences: migrating =========2794main: -- transaction_open?()2795main: -> 0.0000s2796main: -- foreign_keys(:sbom_occurrences)2797main: -> 0.0036s2798main: -- transaction_open?()2799main: -> 0.0000s2800main: -- execute("ALTER TABLE sbom_occurrences\nADD CONSTRAINT fk_c2a5562923\nFOREIGN KEY (source_id)\nREFERENCES sbom_sources (id)\nON DELETE CASCADE\nNOT VALID;\n")2801main: -> 0.0012s2802main: -- execute("ALTER TABLE sbom_occurrences VALIDATE CONSTRAINT fk_c2a5562923;")2803main: -> 0.0011s2804main: == 20220616183309 AddSbomSourceForeignKeyToSbomOccurrences: migrated (0.0099s) 2805main: == 20220616183310 AddProjectForeignKeyToSbomOccurrences: migrating ============2806main: -- transaction_open?()2807main: -> 0.0000s2808main: -- foreign_keys(:sbom_occurrences)2809main: -> 0.0036s2810main: -- transaction_open?()2811main: -> 0.0001s2812main: -- execute("ALTER TABLE sbom_occurrences\nADD CONSTRAINT fk_157506c0e2\nFOREIGN KEY (project_id)\nREFERENCES projects (id)\nON DELETE CASCADE\nNOT VALID;\n")2813main: -> 0.0015s2814main: -- execute("ALTER TABLE sbom_occurrences VALIDATE CONSTRAINT fk_157506c0e2;")2815main: -> 0.0017s2816main: == 20220616183310 AddProjectForeignKeyToSbomOccurrences: migrated (0.0106s) ===2817main: == 20220616222253 RemoveCiSecureFilesPermissionsColumn: migrating =============2818main: -- remove_column(:ci_secure_files, :permissions)2819main: -> 0.0013s2820main: == 20220616222253 RemoveCiSecureFilesPermissionsColumn: migrated (0.0015s) ====2821main: == 20220617073407 AddIndexForOpenIssuesCount: migrating =======================2822main: -- transaction_open?()2823main: -> 0.0000s2824main: -- view_exists?(:postgres_partitions)2825main: -> 0.0011s2826main: -- index_exists?(:issues, [:project_id, :confidential], {:where=>"state_id = 1", :name=>"idx_open_issues_on_project_id_and_confidential", :algorithm=>:concurrently})2827main: -> 0.0259s2828main: -- add_index(:issues, [:project_id, :confidential], {:where=>"state_id = 1", :name=>"idx_open_issues_on_project_id_and_confidential", :algorithm=>:concurrently})2829main: -> 0.0027s2830main: == 20220617073407 AddIndexForOpenIssuesCount: migrated (0.0405s) ==============2831main: == 20220617123022 AddUniqueIndexOnProjectsOnRunnersToken: migrating ===========2832main: -- transaction_open?()2833main: -> 0.0000s2834main: -- view_exists?(:postgres_partitions)2835main: -> 0.0017s2836main: -- index_exists?(:projects, :runners_token, {:name=>"index_uniq_projects_on_runners_token", :unique=>true, :algorithm=>:concurrently})2837main: -> 0.0408s2838main: -- add_index(:projects, :runners_token, {:name=>"index_uniq_projects_on_runners_token", :unique=>true, :algorithm=>:concurrently})2839main: -> 0.0024s2840main: == 20220617123022 AddUniqueIndexOnProjectsOnRunnersToken: migrated (0.0523s) ==2841main: == 20220617123034 AddUniqueIndexOnProjectsOnRunnersTokenEncrypted: migrating ==2842main: -- transaction_open?()2843main: -> 0.0000s2844main: -- view_exists?(:postgres_partitions)2845main: -> 0.0010s2846main: -- index_exists?(:projects, :runners_token_encrypted, {:name=>"index_uniq_projects_on_runners_token_encrypted", :unique=>true, :algorithm=>:concurrently})2847main: -> 0.0382s2848main: -- add_index(:projects, :runners_token_encrypted, {:name=>"index_uniq_projects_on_runners_token_encrypted", :unique=>true, :algorithm=>:concurrently})2849main: -> 0.0021s2850main: == 20220617123034 AddUniqueIndexOnProjectsOnRunnersTokenEncrypted: migrated (0.0489s) 2851main: == 20220617123105 DropIndexOnProjectsOnRunnersToken: migrating ================2852main: -- transaction_open?()2853main: -> 0.0000s2854main: -- view_exists?(:postgres_partitions)2855main: -> 0.0010s2856main: -- indexes(:projects)2857main: -> 0.0388s2858main: -- remove_index(:projects, {:algorithm=>:concurrently, :name=>"index_projects_on_runners_token"})2859main: -> 0.0016s2860main: == 20220617123105 DropIndexOnProjectsOnRunnersToken: migrated (0.0483s) =======2861main: == 20220617123113 DropIndexOnProjectsOnRunnersTokenEncrypted: migrating =======2862main: -- transaction_open?()2863main: -> 0.0000s2864main: -- view_exists?(:postgres_partitions)2865main: -> 0.0011s2866main: -- indexes(:projects)2867main: -> 0.0368s2868main: -- remove_index(:projects, {:algorithm=>:concurrently, :name=>"index_projects_on_runners_token_encrypted"})2869main: -> 0.0014s2870main: == 20220617123113 DropIndexOnProjectsOnRunnersTokenEncrypted: migrated (0.0456s) 2871main: == 20220617123135 DropTempIndexOnProjectsOnIdAndRunnersToken: migrating =======2872main: -- transaction_open?()2873main: -> 0.0000s2874main: -- transaction_open?()2875main: -> 0.0000s2876main: -- view_exists?(:postgres_partitions)2877main: -> 0.0011s2878main: -- indexes(:projects)2879main: -> 0.0376s2880main: -- remove_index(:projects, {:algorithm=>:concurrently, :name=>"tmp_index_projects_on_id_and_runners_token"})2881main: -> 0.0015s2882main: == 20220617123135 DropTempIndexOnProjectsOnIdAndRunnersToken: migrated (0.0520s) 2883main: == 20220617123144 DropTempIndexOnProjectsOnIdAndRunnersTokenEncrypted: migrating 2884main: -- transaction_open?()2885main: -> 0.0000s2886main: -- transaction_open?()2887main: -> 0.0000s2888main: -- view_exists?(:postgres_partitions)2889main: -> 0.0014s2890main: -- indexes(:projects)2891main: -> 0.0377s2892main: -- remove_index(:projects, {:algorithm=>:concurrently, :name=>"tmp_index_projects_on_id_and_runners_token_encrypted"})2893main: -> 0.0015s2894main: == 20220617123144 DropTempIndexOnProjectsOnIdAndRunnersTokenEncrypted: migrated (0.0529s) 2895main: == 20220617141347 CreateCiSecureFileStates: migrating =========================2896main: -- create_table(:ci_secure_file_states, {:id=>false})2897main: -- quote_column_name(:verification_failure)2898main: -> 0.0000s2899main: -> 0.0079s2900main: == 20220617141347 CreateCiSecureFileStates: migrated (0.0081s) ================2901main: == 20220617142124 AddIndexOnInstallablePackageFiles: migrating ================2902main: -- transaction_open?()2903main: -> 0.0000s2904main: -- view_exists?(:postgres_partitions)2905main: -> 0.0011s2906main: -- index_exists?(:packages_package_files, [:package_id, :id, :file_name], {:where=>"(status = 0)", :name=>"idx_pkgs_installable_package_files_on_package_id_id_file_name", :algorithm=>:concurrently})2907main: -> 0.0084s2908main: -- add_index(:packages_package_files, [:package_id, :id, :file_name], {:where=>"(status = 0)", :name=>"idx_pkgs_installable_package_files_on_package_id_id_file_name", :algorithm=>:concurrently})2909main: -> 0.0015s2910main: == 20220617142124 AddIndexOnInstallablePackageFiles: migrated (0.0183s) =======2911main: == 20220617143228 ReplacePackagesIndexOnProjectIdAndStatus: migrating =========2912main: -- transaction_open?()2913main: -> 0.0000s2914main: -- view_exists?(:postgres_partitions)2915main: -> 0.0012s2916main: -- index_exists?(:packages_packages, [:project_id, :status, :id], {:name=>"index_packages_packages_on_project_id_and_status_and_id", :algorithm=>:concurrently})2917main: -> 0.0140s2918main: -- add_index(:packages_packages, [:project_id, :status, :id], {:name=>"index_packages_packages_on_project_id_and_status_and_id", :algorithm=>:concurrently})2919main: -> 0.0022s2920main: -- transaction_open?()2921main: -> 0.0000s2922main: -- view_exists?(:postgres_partitions)2923main: -> 0.0012s2924main: -- indexes(:packages_packages)2925main: -> 0.0141s2926main: -- remove_index(:packages_packages, {:algorithm=>:concurrently, :name=>"index_packages_packages_on_project_id_and_status"})2927main: -> 0.0013s2928main: == 20220617143228 ReplacePackagesIndexOnProjectIdAndStatus: migrated (0.0494s) 2929main: == 20220619182308 CreateProjectRelationExports: migrating =====================2930main: -- create_table(:project_relation_exports, {})2931main: -- quote_column_name(:relation)2932main: -> 0.0000s2933main: -- quote_column_name(:jid)2934main: -> 0.0000s2935main: -- quote_column_name(:export_error)2936main: -> 0.0000s2937main: -> 0.0064s2938main: == 20220619182308 CreateProjectRelationExports: migrated (0.0066s) ============2939main: == 20220619184931 CreateProjectRelationExportUploads: migrating ===============2940main: -- create_table(:project_relation_export_uploads, {})2941main: -- quote_column_name(:export_file)2942main: -> 0.0000s2943main: -> 0.0039s2944main: == 20220619184931 CreateProjectRelationExportUploads: migrated (0.0042s) ======2945main: == 20220619212618 AddSelectiveCodeOwnerRemovalsToProjectSettings: migrating ===2946main: -- add_column(:project_settings, :selective_code_owner_removals, :boolean, {:default=>false, :null=>false})2947main: -> 0.0016s2948main: == 20220619212618 AddSelectiveCodeOwnerRemovalsToProjectSettings: migrated (0.0019s) 2949main: == 20220620060633 FinalizeOrphanedRoutesCleanup: migrating ====================2950main: == 20220620060633 FinalizeOrphanedRoutesCleanup: migrated (0.0180s) ===========2951main: == 20220620132300 UpdateLastRunDateForIterationsCadences: migrating ===========2952main: -- execute("UPDATE iterations_cadences SET last_run_date=CURRENT_DATE WHERE automatic=true;\n")2953main: -> 0.0017s2954main: == 20220620132300 UpdateLastRunDateForIterationsCadences: migrated (0.0020s) ==2955main: == 20220620151740 AddIndexesIssuesOnProjectIdAndClosedAt: migrating ===========2956main: -- indexes(:issues)2957main: -> 0.0490s2958main: -- current_schema()2959main: -> 0.0008s2960main: -- transaction_open?()2961main: -> 0.0000s2962main: -- view_exists?(:postgres_partitions)2963main: -> 0.0011s2964main: -- index_exists?(:issues, "project_id, closed_at DESC NULLS LAST, state_id, id", {:name=>"index_issues_on_project_id_closed_at_desc_state_id_and_id", :algorithm=>:concurrently})2965main: -> 0.0208s2966main: -- add_index(:issues, "project_id, closed_at DESC NULLS LAST, state_id, id", {:name=>"index_issues_on_project_id_closed_at_desc_state_id_and_id", :algorithm=>:concurrently})2967main: -> 0.0017s2968main: -- indexes(:issues)2969main: -> 0.0221s2970main: -- current_schema()2971main: -> 0.0005s2972main: -- transaction_open?()2973main: -> 0.0000s2974main: -- view_exists?(:postgres_partitions)2975main: -> 0.0009s2976main: -- index_exists?(:issues, [:project_id, :closed_at, :state_id, :id], {:name=>"index_issues_on_project_id_closed_at_state_id_and_id", :algorithm=>:concurrently})2977main: -> 0.0211s2978main: -- add_index(:issues, [:project_id, :closed_at, :state_id, :id], {:name=>"index_issues_on_project_id_closed_at_state_id_and_id", :algorithm=>:concurrently})2979main: -> 0.0018s2980main: -- transaction_open?()2981main: -> 0.0000s2982main: -- view_exists?(:postgres_partitions)2983main: -> 0.0009s2984main: -- indexes(:issues)2985main: -> 0.0226s2986main: -- remove_index(:issues, {:algorithm=>:concurrently, :name=>"index_issues_on_project_id_and_closed_at"})2987main: -> 0.0014s2988main: == 20220620151740 AddIndexesIssuesOnProjectIdAndClosedAt: migrated (0.1739s) ==2989main: == 20220621040800 BackfillImportedIssueSearchData: migrating ==================2990main: == 20220621040800 BackfillImportedIssueSearchData: migrated (0.0001s) =========2991main: == 20220621082245 RemoveTmpIndexOnRoutesNamespaceIdColumn: migrating ==========2992main: -- transaction_open?()2993main: -> 0.0000s2994main: -- view_exists?(:postgres_partitions)2995main: -> 0.0010s2996main: -- indexes(:routes)2997main: -> 0.0063s2998main: -- remove_index(:routes, {:algorithm=>:concurrently, :name=>"tmp_index_for_namespace_id_migration_on_routes"})2999main: -> 0.0011s3000main: == 20220621082245 RemoveTmpIndexOnRoutesNamespaceIdColumn: migrated (0.0145s) =3001main: == 20220621092245 ValidateNotNullConstraintOnRoutesNamespaceIdColumn: migrating 3002main: -- current_schema()3003main: -> 0.0006s3004main: -- execute("ALTER TABLE routes VALIDATE CONSTRAINT check_af84c6c93f;")3005main: -> 0.0007s3006main: == 20220621092245 ValidateNotNullConstraintOnRoutesNamespaceIdColumn: migrated (0.0034s) 3007main: == 20220621192541 AddProjectIdStateSeverityDefaultBranchIndexForVulnerabilities: migrating 3008main: -- transaction_open?()3009main: -> 0.0000s3010main: -- view_exists?(:postgres_partitions)3011main: -> 0.0009s3012main: -- index_exists?(:vulnerabilities, [:project_id, :state, :severity, :present_on_default_branch], {:name=>"index_vulnerabilities_project_id_state_severity_default_branch", :algorithm=>:concurrently})3013main: -> 0.0113s3014main: -- add_index(:vulnerabilities, [:project_id, :state, :severity, :present_on_default_branch], {:name=>"index_vulnerabilities_project_id_state_severity_default_branch", :algorithm=>:concurrently})3015main: -> 0.0016s3016main: == 20220621192541 AddProjectIdStateSeverityDefaultBranchIndexForVulnerabilities: migrated (0.0211s) 3017main: == 20220621202616 AddPartialIndexOnOauthAccessTokensRevokedAt: migrating ======3018main: -- transaction_open?()3019main: -> 0.0000s3020main: -- view_exists?(:postgres_partitions)3021main: -> 0.0009s3022main: -- index_exists?(:oauth_access_tokens, [:resource_owner_id, :created_at], {:name=>"partial_index_resource_owner_id_created_at_token_not_revoked", :where=>"revoked_at IS NULL", :algorithm=>:concurrently})3023main: -> 0.0042s3024main: -- add_index(:oauth_access_tokens, [:resource_owner_id, :created_at], {:name=>"partial_index_resource_owner_id_created_at_token_not_revoked", :where=>"revoked_at IS NULL", :algorithm=>:concurrently})3025main: -> 0.0015s3026main: -- transaction_open?()3027main: -> 0.0000s3028main: -- view_exists?(:postgres_partitions)3029main: -> 0.0010s3030main: -- index_exists?(:oauth_access_tokens, :resource_owner_id, {:name=>"index_oauth_access_tokens_on_resource_owner_id", :algorithm=>:concurrently})3031main: -> 0.0049s3032main: -- remove_index(:oauth_access_tokens, {:name=>"index_oauth_access_tokens_on_resource_owner_id", :algorithm=>:concurrently, :column=>:resource_owner_id})3033main: -> 0.0059s3034main: == 20220621202616 AddPartialIndexOnOauthAccessTokensRevokedAt: migrated (0.0325s) 3035main: == 20220622070547 AddTempIndexForContainerRegistrySizeMigration: migrating ====3036main: -- transaction_open?()3037main: -> 0.0000s3038main: -- view_exists?(:postgres_partitions)3039main: -> 0.0010s3040main: -- index_exists?(:container_repositories, [:project_id], {:name=>"tmp_index_migrated_container_registries", :where=>"migration_state = 'import_done' OR created_at >= '2022-01-23'", :algorithm=>:concurrently})3041main: -> 0.0090s3042main: -- add_index(:container_repositories, [:project_id], {:name=>"tmp_index_migrated_container_registries", :where=>"migration_state = 'import_done' OR created_at >= '2022-01-23'", :algorithm=>:concurrently})3043main: -> 0.0015s3044main: -- transaction_open?()3045main: -> 0.0000s3046main: -- view_exists?(:postgres_partitions)3047main: -> 0.0010s3048main: -- index_exists?(:project_statistics, [:project_id], {:name=>"tmp_index_project_statistics_cont_registry_size", :where=>"container_registry_size = 0", :algorithm=>:concurrently})3049main: -> 0.0057s3050main: -- add_index(:project_statistics, [:project_id], {:name=>"tmp_index_project_statistics_cont_registry_size", :where=>"container_registry_size = 0", :algorithm=>:concurrently})3051main: -> 0.0014s3052main: == 20220622070547 AddTempIndexForContainerRegistrySizeMigration: migrated (0.0343s) 3053main: == 20220622080547 BackfillProjectStatisticsWithContainerRegistrySize: migrating 3054main: == 20220622080547 BackfillProjectStatisticsWithContainerRegistrySize: migrated (0.0345s) 3055main: == 20220624062300 DeleteBackfillCiRunnerSemverMigration: migrating ============3056main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].3057main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared, :gitlab_internal, :gitlab_pm].3058main: == 20220624062300 DeleteBackfillCiRunnerSemverMigration: migrated (0.0002s) ===3059main: == 20220624081524 AddCiRunnerVersionsTable: migrating =========================3060main: -- create_table(:ci_runner_versions, {:id=>false})3061main: -- quote_column_name(:version)3062main: -> 0.0000s3063main: -> 0.0036s3064main: == 20220624081524 AddCiRunnerVersionsTable: migrated (0.0038s) ================3065main: == 20220624090458 AddIndexOnRunnerVersion: migrating ==========================3066main: -- transaction_open?()3067main: -> 0.0000s3068main: -- view_exists?(:postgres_partitions)3069main: -> 0.0010s3070main: -- index_exists?(:ci_runners, :version, {:name=>"index_ci_runners_on_version", :algorithm=>:concurrently})3071main: -> 0.0103s3072main: -- add_index(:ci_runners, :version, {:name=>"index_ci_runners_on_version", :algorithm=>:concurrently})3073main: -> 0.0014s3074main: == 20220624090458 AddIndexOnRunnerVersion: migrated (0.0203s) =================3075main: == 20220627061008 AddFeiShuIntegration: migrating =============================3076main: -- add_column(:application_settings, :feishu_integration_enabled, :boolean, {:null=>false, :default=>false, :comment=>"JiHu-specific column"})3077main: -> 0.0033s3078main: -- add_column(:application_settings, :encrypted_feishu_app_key, :binary, {:comment=>"JiHu-specific column"})3079main: -> 0.0015s3080main: -- add_column(:application_settings, :encrypted_feishu_app_key_iv, :binary, {:comment=>"JiHu-specific column"})3081main: -> 0.0014s3082main: -- add_column(:application_settings, :encrypted_feishu_app_secret, :binary, {:comment=>"JiHu-specific column"})3083main: -> 0.0016s3084main: -- add_column(:application_settings, :encrypted_feishu_app_secret_iv, :binary, {:comment=>"JiHu-specific column"})3085main: -> 0.0016s3086main: == 20220627061008 AddFeiShuIntegration: migrated (0.0100s) ====================3087main: == 20220627090231 ScheduleDisableLegacyOpenSourceLicenseForInactivePublicProjects: migrating 3088main: == 20220627090231 ScheduleDisableLegacyOpenSourceLicenseForInactivePublicProjects: migrated (0.0002s) 3089main: == 20220627122229 CreateUserNamespaceCallouts: migrating ======================3090main: -- create_table(:user_namespace_callouts, {})3091main: -> 0.0034s3092main: == 20220627122229 CreateUserNamespaceCallouts: migrated (0.0037s) =============3093main: == 20220627122230 AddForeignKeysToUserNamespaceCallouts: migrating ============3094main: -- transaction_open?()3095main: -> 0.0000s3096main: -- foreign_keys(:user_namespace_callouts)3097main: -> 0.0031s3098main: -- transaction_open?()3099main: -> 0.0000s3100main: -- execute("ALTER TABLE user_namespace_callouts\nADD CONSTRAINT fk_4b1257f385\nFOREIGN KEY (user_id)\nREFERENCES users (id)\nON DELETE CASCADE\nNOT VALID;\n")3101main: -> 0.0015s3102main: -- execute("ALTER TABLE user_namespace_callouts VALIDATE CONSTRAINT fk_4b1257f385;")3103main: -> 0.0012s3104main: -- transaction_open?()3105main: -> 0.0000s3106main: -- foreign_keys(:user_namespace_callouts)3107main: -> 0.0030s3108main: -- transaction_open?()3109main: -> 0.0000s3110main: -- execute("ALTER TABLE user_namespace_callouts\nADD CONSTRAINT fk_27a69fd1bd\nFOREIGN KEY (namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")3111main: -> 0.0012s3112main: -- execute("ALTER TABLE user_namespace_callouts VALIDATE CONSTRAINT fk_27a69fd1bd;")3113main: -> 0.0012s3114main: -- transaction_open?()3115main: -> 0.0000s3116main: -- view_exists?(:postgres_partitions)3117main: -> 0.0011s3118main: -- index_exists?(:user_namespace_callouts, [:user_id, :feature_name, :namespace_id], {:unique=>true, :name=>"index_ns_user_callouts_feature", :algorithm=>:concurrently})3119main: -> 0.0025s3120main: -- add_index(:user_namespace_callouts, [:user_id, :feature_name, :namespace_id], {:unique=>true, :name=>"index_ns_user_callouts_feature", :algorithm=>:concurrently})3121main: -> 0.0015s3122main: == 20220627122230 AddForeignKeysToUserNamespaceCallouts: migrated (0.0305s) ===3123main: == 20220627140315 AddLastFeatureFlagUpdatedAtToOperationsFeatureFlagsClients: migrating 3124main: -- add_column(:operations_feature_flags_clients, :last_feature_flag_updated_at, :datetime_with_timezone)3125main: -> 0.0014s3126main: == 20220627140315 AddLastFeatureFlagUpdatedAtToOperationsFeatureFlagsClients: migrated (0.0016s) 3127main: == 20220627152642 QueueUpdateDelayedProjectRemovalToNullForUserNamespace: migrating 3128main: == 20220627152642 QueueUpdateDelayedProjectRemovalToNullForUserNamespace: migrated (0.0298s) 3129main: == 20220627171538 AddErrorTrackingSettings: migrating =========================3130main: -- add_column(:application_settings, :error_tracking_enabled, :boolean, {:default=>false, :null=>false, :if_not_exists=>true})3131main: -> 0.1544s3132main: -- add_column(:application_settings, :error_tracking_api_url, :text, {:if_not_exists=>true})3133main: -> 0.1541s3134main: -- transaction_open?()3135main: -> 0.0000s3136main: -- current_schema()3137main: -> 0.0006s3138main: -- transaction_open?()3139main: -> 0.0000s3140main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_492cc1354d\nCHECK ( char_length(error_tracking_api_url) <= 255 )\nNOT VALID;\n")3141main: -> 0.0017s3142main: -- current_schema()3143main: -> 0.0006s3144main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_492cc1354d;")3145main: -> 0.0014s3146main: == 20220627171538 AddErrorTrackingSettings: migrated (0.3197s) ================3147main: == 20220627223041 AddPostMigrateTestTable: migrating ==========================3148main: -- create_table(:post_migration_test_table, {})3149main: -> 0.0023s3150main: == 20220627223041 AddPostMigrateTestTable: migrated (0.0025s) =================3151main: == 20220628012902 FinaliseProjectNamespaceMembers: migrating ==================3152main: == 20220628012902 FinaliseProjectNamespaceMembers: migrated (0.0146s) =========3153main: == 20220628110214 AddNamespaceIdColumnToIssuesTable: migrating ================3154main: -- add_column(:issues, :namespace_id, :bigint)3155main: -> 0.0011s3156main: == 20220628110214 AddNamespaceIdColumnToIssuesTable: migrated (0.0013s) =======3157main: == 20220628110823 AddIssuesNamespaceIdFkAndIndex: migrating ===================3158main: -- transaction_open?()3159main: -> 0.0000s3160main: -- view_exists?(:postgres_partitions)3161main: -> 0.0010s3162main: -- index_exists?(:issues, :namespace_id, {:name=>"index_issues_on_namespace_id", :algorithm=>:concurrently})3163main: -> 0.0219s3164main: -- add_index(:issues, :namespace_id, {:name=>"index_issues_on_namespace_id", :algorithm=>:concurrently})3165main: -> 0.0015s3166main: -- transaction_open?()3167main: -> 0.0000s3168main: -- foreign_keys(:issues)3169main: -> 0.0032s3170main: -- transaction_open?()3171main: -> 0.0000s3172main: -- execute("LOCK TABLE namespaces, issues IN SHARE ROW EXCLUSIVE MODE")3173main: -> 0.0006s3174main: -- execute("ALTER TABLE issues\nADD CONSTRAINT fk_6e10d4d38a\nFOREIGN KEY (namespace_id)\nREFERENCES namespaces (id)\nON DELETE SET NULL\nNOT VALID;\n")3175main: -> 0.0014s3176main: -- execute("ALTER TABLE issues VALIDATE CONSTRAINT fk_6e10d4d38a;")3177main: -> 0.0015s3178main: == 20220628110823 AddIssuesNamespaceIdFkAndIndex: migrated (0.0420s) ==========3179main: == 20220628111752 DropTokenIndexFromCiBuilds: migrating =======================3180main: -- transaction_open?()3181main: -> 0.0000s3182main: -- view_exists?(:postgres_partitions)3183main: -> 0.0010s3184main: -- indexes(:ci_builds)3185main: -> 0.0193s3186main: -- remove_index(:ci_builds, {:algorithm=>:concurrently, :name=>"index_ci_builds_on_token_partial"})3187main: -> 0.0013s3188main: == 20220628111752 DropTokenIndexFromCiBuilds: migrated (0.0280s) ==============3189main: == 20220628120708 CreateNamespaceBans: migrating ==============================3190main: -- create_table(:namespace_bans, {})3191main: -> 0.0042s3192main: == 20220628120708 CreateNamespaceBans: migrated (0.0044s) =====================3193main: == 20220628121644 AddNamespaceBansNamespaceIdForeignKey: migrating ============3194main: -- transaction_open?()3195main: -> 0.0000s3196main: -- foreign_keys(:namespace_bans)3197main: -> 0.0031s3198main: -- transaction_open?()3199main: -> 0.0000s3200main: -- execute("ALTER TABLE namespace_bans\nADD CONSTRAINT fk_bcc024eef2\nFOREIGN KEY (namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")3201main: -> 0.0012s3202main: -- execute("ALTER TABLE namespace_bans VALIDATE CONSTRAINT fk_bcc024eef2;")3203main: -> 0.0011s3204main: == 20220628121644 AddNamespaceBansNamespaceIdForeignKey: migrated (0.0088s) ===3205main: == 20220628121712 AddNamespaceBansUserIdForeignKey: migrating =================3206main: -- transaction_open?()3207main: -> 0.0000s3208main: -- foreign_keys(:namespace_bans)3209main: -> 0.0029s3210main: -- transaction_open?()3211main: -> 0.0000s3212main: -- execute("ALTER TABLE namespace_bans\nADD CONSTRAINT fk_4275fbb1d7\nFOREIGN KEY (user_id)\nREFERENCES users (id)\nON DELETE CASCADE\nNOT VALID;\n")3213main: -> 0.0013s3214main: -- execute("ALTER TABLE namespace_bans VALIDATE CONSTRAINT fk_4275fbb1d7;")3215main: -> 0.0012s3216main: == 20220628121712 AddNamespaceBansUserIdForeignKey: migrated (0.0089s) ========3217main: == 20220628122622 RenameBuildsSidekiqQueuesToNamespaces: migrating ============3218main: == 20220628122622 RenameBuildsSidekiqQueuesToNamespaces: migrated (0.0007s) ===3219main: == 20220629124942 RemoveVulnerabilityOccurrencesMigratedToNewStructureColumn: migrating 3220main: -- transaction_open?()3221main: -> 0.0000s3222main: -- remove_column(:vulnerability_occurrences, :migrated_to_new_structure)3223main: -> 0.0011s3224main: == 20220629124942 RemoveVulnerabilityOccurrencesMigratedToNewStructureColumn: migrated (0.0039s) 3225main: == 20220629184402 UnsetEscalationPoliciesForAlertIncidents: migrating =========3226main: == 20220629184402 UnsetEscalationPoliciesForAlertIncidents: migrated (0.0019s) 3227main: == 20220629220129 IncreaseWebauthnXidLength: migrating ========================3228main: -- transaction_open?()3229main: -> 0.0000s3230main: -- current_schema()3231main: -> 0.0005s3232main: -- transaction_open?()3233main: -> 0.0000s3234main: -- execute("ALTER TABLE webauthn_registrations\nADD CONSTRAINT check_f5ab2b551a\nCHECK ( char_length(credential_xid) <= 1364 )\nNOT VALID;\n")3235main: -> 0.0008s3236main: -- current_schema()3237main: -> 0.0005s3238main: -- execute("ALTER TABLE webauthn_registrations VALIDATE CONSTRAINT check_f5ab2b551a;")3239main: -> 0.0009s3240main: -- transaction_open?()3241main: -> 0.0000s3242main: -- transaction_open?()3243main: -> 0.0000s3244main: -- execute(" ALTER TABLE webauthn_registrations\n DROP CONSTRAINT IF EXISTS check_e54008d9ce\n")3245main: -> 0.0008s3246main: == 20220629220129 IncreaseWebauthnXidLength: migrated (0.0132s) ===============3247main: == 20220630050050 IndexVulnerabilityReadsOnCastedClusterAgentIdFull: migrating 3248main: -- transaction_open?()3249main: -> 0.0000s3250main: -- view_exists?(:postgres_partitions)3251main: -> 0.0010s3252main: -- index_exists?(:vulnerability_reads, :casted_cluster_agent_id, {:name=>"index_vuln_reads_on_casted_cluster_agent_id_where_it_is_null", :where=>"casted_cluster_agent_id IS NOT NULL", :algorithm=>:concurrently})3253main: -> 0.0082s3254main: -- add_index(:vulnerability_reads, :casted_cluster_agent_id, {:name=>"index_vuln_reads_on_casted_cluster_agent_id_where_it_is_null", :where=>"casted_cluster_agent_id IS NOT NULL", :algorithm=>:concurrently})3255main: -> 0.0013s3256main: == 20220630050050 IndexVulnerabilityReadsOnCastedClusterAgentIdFull: migrated (0.0174s) 3257main: == 20220630085003 DropProjectSuccessfullPagesDeployIndexFromCiBuilds: migrating 3258main: -- transaction_open?()3259main: -> 0.0000s3260main: -- view_exists?(:postgres_partitions)3261main: -> 0.0011s3262main: -- indexes(:ci_builds)3263main: -> 0.0192s3264main: -- remove_index(:ci_builds, {:algorithm=>:concurrently, :name=>"index_ci_builds_on_project_id_for_successfull_pages_deploy"})3265main: -> 0.0014s3266main: == 20220630085003 DropProjectSuccessfullPagesDeployIndexFromCiBuilds: migrated (0.0288s) 3267main: == 20220630091409 AddIndexOnEventsForContributionAnalyticsOptimization: migrating 3268main: -- transaction_open?()3269main: -> 0.0000s3270main: -- view_exists?(:postgres_partitions)3271main: -> 0.0010s3272main: -- index_exists?(:events, [:project_id, :target_type, :action, :created_at, :author_id, :id], {:name=>"index_on_events_to_improve_contribution_analytics_performance", :algorithm=>:concurrently})3273main: -> 0.0088s3274main: -- add_index(:events, [:project_id, :target_type, :action, :created_at, :author_id, :id], {:name=>"index_on_events_to_improve_contribution_analytics_performance", :algorithm=>:concurrently})3275main: -> 0.0014s3276main: == 20220630091409 AddIndexOnEventsForContributionAnalyticsOptimization: migrated (0.0185s) 3277main: == 20220630151641 ScheduleSetCorrectVulnerabilityState: migrating =============3278main: == 20220630151641 ScheduleSetCorrectVulnerabilityState: migrated (0.0253s) ====3279main: == 20220630202329 AddPartialIndexOnOauthAccessTokensRevokedAtWithOrder: migrating 3280main: -- transaction_open?()3281main: -> 0.0000s3282main: -- view_exists?(:postgres_partitions)3283main: -> 0.0008s3284main: -- index_exists?(:oauth_access_tokens, [:resource_owner_id, :application_id, :created_at], {:name=>"partial_index_user_id_app_id_created_at_token_not_revoked", :where=>"revoked_at IS NULL", :algorithm=>:concurrently})3285main: -> 0.0040s3286main: -- add_index(:oauth_access_tokens, [:resource_owner_id, :application_id, :created_at], {:name=>"partial_index_user_id_app_id_created_at_token_not_revoked", :where=>"revoked_at IS NULL", :algorithm=>:concurrently})3287main: -> 0.0014s3288main: -- transaction_open?()3289main: -> 0.0000s3290main: -- view_exists?(:postgres_partitions)3291main: -> 0.0010s3292main: -- index_exists?(:oauth_access_tokens, [:resource_owner_id, :created_at], {:name=>"partial_index_resource_owner_id_created_at_token_not_revoked", :algorithm=>:concurrently})3293main: -> 0.0047s3294main: -- remove_index(:oauth_access_tokens, {:name=>"partial_index_resource_owner_id_created_at_token_not_revoked", :algorithm=>:concurrently, :column=>[:resource_owner_id, :created_at]})3295main: -> 0.0055s3296main: == 20220630202329 AddPartialIndexOnOauthAccessTokensRevokedAtWithOrder: migrated (0.0304s) 3297main: == 20220701085523 ScheduleIndexOnEventsForContributionAnalyticsOptimization: migrating 3298main: -- index_exists?(:events, [:project_id, :target_type, :action, :created_at, :author_id, :id], {:name=>"index_on_events_to_improve_contribution_analytics_performance", :algorithm=>:concurrently})3299main: -> 0.0096s3300main: == 20220701085523 ScheduleIndexOnEventsForContributionAnalyticsOptimization: migrated (0.0117s) 3301main: == 20220701173859 RemoveNotNullConstraintsFromRequirements: migrating =========3302main: -- change_column_null(:requirements, :created_at, true)3303main: -> 0.0008s3304main: -- change_column_null(:requirements, :updated_at, true)3305main: -> 0.0007s3306main: -- change_column_null(:requirements, :title, true)3307main: -> 0.0007s3308main: -- change_column_null(:requirements, :state, true)3309main: -> 0.0007s3310main: == 20220701173859 RemoveNotNullConstraintsFromRequirements: migrated (0.0034s) 3311main: == 20220703182234 AddFindingsPartitionNumberToSecurityScans: migrating ========3312main: -- add_column(:security_scans, :findings_partition_number, :integer, {:default=>1, :null=>false})3313main: -> 0.0013s3314main: == 20220703182234 AddFindingsPartitionNumberToSecurityScans: migrated (0.0015s) 3315main: == 20220703182254 AddPartitionNumberToSecurityFindings: migrating =============3316main: -- add_column(:security_findings, :partition_number, :integer, {:default=>1, :null=>false})3317main: -> 0.0013s3318main: == 20220703182254 AddPartitionNumberToSecurityFindings: migrated (0.0015s) ====3319main: == 20220703182314 AddCheckConstraintForSecurityFindingsPartitionNumber: migrating 3320main: -- transaction_open?()3321main: -> 0.0000s3322main: -- current_schema()3323main: -> 0.0006s3324main: -- transaction_open?()3325main: -> 0.0000s3326main: -- execute("ALTER TABLE security_findings\nADD CONSTRAINT check_partition_number\nCHECK ( partition_number = 1 )\nNOT VALID;\n")3327main: -> 0.0008s3328main: -- current_schema()3329main: -> 0.0005s3330main: -- execute("ALTER TABLE security_findings VALIDATE CONSTRAINT check_partition_number;")3331main: -> 0.0008s3332main: == 20220703182314 AddCheckConstraintForSecurityFindingsPartitionNumber: migrated (0.0088s) 3333main: == 20220704034050 AddUsersAllowlistToGitRateLimits: migrating =================3334main: -- add_column(:application_settings, :git_rate_limit_users_allowlist, :text, {:array=>true, :default=>[], :null=>false})3335main: -> 0.0027s3336main: == 20220704034050 AddUsersAllowlistToGitRateLimits: migrated (0.0029s) ========3337main: == 20220704034105 AddApplicationSettingsGitUsersAllowlistMaxUsernamesConstraint: migrating 3338main: -- transaction_open?()3339main: -> 0.0000s3340main: -- current_schema()3341main: -> 0.0005s3342main: -- transaction_open?()3343main: -> 0.0000s3344main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT app_settings_git_rate_limit_users_allowlist_max_usernames\nCHECK ( CARDINALITY(git_rate_limit_users_allowlist) <= 100 )\nNOT VALID;\n")3345main: -> 0.0014s3346main: -- current_schema()3347main: -> 0.0005s3348main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT app_settings_git_rate_limit_users_allowlist_max_usernames;")3349main: -> 0.0013s3350main: == 20220704034105 AddApplicationSettingsGitUsersAllowlistMaxUsernamesConstraint: migrated (0.0097s) 3351main: == 20220704044408 RemoveForeignKeyInProjectTracingSettings: migrating =========3352main: -- transaction_open?()3353main: -> 0.0001s3354main: -- foreign_keys(:project_tracing_settings)3355main: -> 0.0028s3356main: -- remove_foreign_key(:project_tracing_settings, {:column=>:project_id})3357main: -> 0.0037s3358main: == 20220704044408 RemoveForeignKeyInProjectTracingSettings: migrated (0.0093s) 3359main: == 20220704045440 DropProjectTracingSettingsTable: migrating ==================3360main: -- drop_table(:project_tracing_settings)3361main: -> 0.0016s3362main: == 20220704045440 DropProjectTracingSettingsTable: migrated (0.0018s) =========3363main: == 20220705114635 DropIndexOnCiRunnerVersionsOnVersion: migrating =============3364main: -- transaction_open?()3365main: -> 0.0000s3366main: -- view_exists?(:postgres_partitions)3367main: -> 0.0009s3368main: -- indexes(:ci_runner_versions)3369main: -> 0.0027s3370main: -- remove_index(:ci_runner_versions, {:algorithm=>:concurrently, :name=>"index_ci_runner_versions_on_version"})3371main: -> 0.0009s3372main: == 20220705114635 DropIndexOnCiRunnerVersionsOnVersion: migrated (0.0104s) ====3373main: == 20220705145349 AddProjectImportLevelToNamespaceSettings: migrating =========3374main: -- add_column(:namespace_settings, :project_import_level, :smallint, {:default=>0, :null=>false})3375main: -> 0.0014s3376main: == 20220705145349 AddProjectImportLevelToNamespaceSettings: migrated (0.0016s) 3377main: == 20220705180843 ValidateRequirementsIssueIdNotNull: migrating ===============3378main: -- current_schema()3379main: -> 0.0005s3380main: -- execute("ALTER TABLE requirements VALIDATE CONSTRAINT check_requirement_issue_not_null;")3381main: -> 0.0008s3382main: == 20220705180843 ValidateRequirementsIssueIdNotNull: migrated (0.0034s) ======3383main: == 20220706065245 RemoveForeignKeyInClustersApplicationsElasticStacks: migrating 3384main: -- transaction_open?()3385main: -> 0.0000s3386main: -- foreign_keys(:clusters_applications_elastic_stacks)3387main: -> 0.0028s3388main: -- remove_foreign_key(:clusters_applications_elastic_stacks, {:column=>:cluster_id})3389main: -> 0.0037s3390main: == 20220706065245 RemoveForeignKeyInClustersApplicationsElasticStacks: migrated (0.0090s) 3391main: == 20220706065611 RemoveForeignKeyInClustersIntegrationElasticstack: migrating 3392main: -- transaction_open?()3393main: -> 0.0000s3394main: -- foreign_keys(:clusters_integration_elasticstack)3395main: -> 0.0028s3396main: -- remove_foreign_key(:clusters_integration_elasticstack, {:column=>:cluster_id})3397main: -> 0.0038s3398main: == 20220706065611 RemoveForeignKeyInClustersIntegrationElasticstack: migrated (0.0091s) 3399main: == 20220706070804 DropClustersApplicationsElasticStacksTable: migrating =======3400main: -- drop_table(:clusters_applications_elastic_stacks)3401main: -> 0.0016s3402main: == 20220706070804 DropClustersApplicationsElasticStacksTable: migrated (0.0018s) 3403main: == 20220706071304 DropClustersIntegrationElasticstackTable: migrating =========3404main: -- drop_table(:clusters_integration_elasticstack)3405main: -> 0.0014s3406main: == 20220706071304 DropClustersIntegrationElasticstackTable: migrated (0.0015s) 3407main: == 20220706115138 CreateAsyncIndexOnSecurityFindings: migrating ===============3408main: -- index_exists?(:security_findings, [:uuid, :id], {:order=>{:id=>:desc}, :name=>"index_on_security_findings_uuid_and_id_order_desc", :algorithm=>:concurrently})3409main: -> 0.0059s3410main: -- add_index_options(:security_findings, [:uuid, :id], {:order=>{:id=>:desc}, :name=>"index_on_security_findings_uuid_and_id_order_desc", :algorithm=>:concurrently})3411main: -> 0.0001s3412main: == 20220706115138 CreateAsyncIndexOnSecurityFindings: migrated (0.0116s) ======3413main: == 20220706122719 CreateIndexOnSecurityFindingsUuidIdDesc: migrating ==========3414main: -- transaction_open?()3415main: -> 0.0000s3416main: -- view_exists?(:postgres_partitions)3417main: -> 0.0010s3418main: -- index_exists?(:security_findings, [:uuid, :id], {:order=>{:id=>:desc}, :name=>"index_on_security_findings_uuid_and_id_order_desc", :algorithm=>:concurrently})3419main: -> 0.0061s3420main: -- add_index(:security_findings, [:uuid, :id], {:order=>{:id=>:desc}, :name=>"index_on_security_findings_uuid_and_id_order_desc", :algorithm=>:concurrently})3421main: -> 0.0015s3422main: == 20220706122719 CreateIndexOnSecurityFindingsUuidIdDesc: migrated (0.0180s) =3423main: == 20220706132238 AddIndicesOnSecurityScansInfoColumn: migrating ==============3424main: -- transaction_open?()3425main: -> 0.0000s3426main: -- view_exists?(:postgres_partitions)3427main: -> 0.0011s3428main: -- index_exists?(:security_scans, "pipeline_id, jsonb_array_length(COALESCE((security_scans.info -> 'errors'::text), '[]'::jsonb))", {:name=>:index_security_scans_on_length_of_errors, :algorithm=>:concurrently})3429main: -> 0.0048s3430main: -- add_index(:security_scans, "pipeline_id, jsonb_array_length(COALESCE((security_scans.info -> 'errors'::text), '[]'::jsonb))", {:name=>:index_security_scans_on_length_of_errors, :algorithm=>:concurrently})3431main: -> 0.0017s3432main: -- transaction_open?()3433main: -> 0.0000s3434main: -- view_exists?(:postgres_partitions)3435main: -> 0.0009s3436main: -- index_exists?(:security_scans, "pipeline_id, jsonb_array_length(COALESCE((security_scans.info -> 'warnings'::text), '[]'::jsonb))", {:name=>:index_security_scans_on_length_of_warnings, :algorithm=>:concurrently})3437main: -> 0.0049s3438main: -- add_index(:security_scans, "pipeline_id, jsonb_array_length(COALESCE((security_scans.info -> 'warnings'::text), '[]'::jsonb))", {:name=>:index_security_scans_on_length_of_warnings, :algorithm=>:concurrently})3439main: -> 0.0014s3440main: == 20220706132238 AddIndicesOnSecurityScansInfoColumn: migrated (0.0286s) =====3441main: == 20220706145113 BackfillNamespaceIdOnIssues: migrating ======================3442main: == 20220706145113 BackfillNamespaceIdOnIssues: migrated (0.0289s) =============3443main: == 20220706191627 AddEncryptedErrorTrackingAccessToken: migrating =============3444main: -- add_column(:application_settings, :error_tracking_access_token_encrypted, :text, {:if_not_exists=>true})3445main: -> 0.1603s3446main: -- transaction_open?()3447main: -> 0.0000s3448main: -- current_schema()3449main: -> 0.0007s3450main: -- transaction_open?()3451main: -> 0.0000s3452main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_5688c70478\nCHECK ( char_length(error_tracking_access_token_encrypted) <= 255 )\nNOT VALID;\n")3453main: -> 0.0018s3454main: -- current_schema()3455main: -> 0.0005s3456main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_5688c70478;")3457main: -> 0.0015s3458main: == 20220706191627 AddEncryptedErrorTrackingAccessToken: migrated (0.1729s) ====3459main: == 20220707075300 RescheduleBackfillImportedIssueSearchData: migrating ========3460main: == 20220707075300 RescheduleBackfillImportedIssueSearchData: migrated (0.0533s) 3461main: == 20220707105335 RenameChatNameServiceIdToIntegrationId: migrating ===========3462main: -- transaction_open?()3463main: -> 0.0000s3464main: -- columns(:chat_names)3465main: -> 0.0023s3466main: -- column_exists?(:chat_names, :id)3467main: -> 0.0022s3468main: -- column_exists?(:chat_names, :integration_id)3469main: -> 0.0022s3470main: -- columns(:chat_names)3471main: -> 0.0019s3472main: -- add_column(:chat_names, :integration_id, :integer, {:limit=>4, :precision=>nil, :scale=>nil})3473main: -> 0.0009s3474main: -- transaction_open?()3475main: -> 0.0000s3476main: -- exec_query("SELECT COUNT(*) AS count FROM \"chat_names\"")3477main: -> 0.0009s3478main: -- current_schema()3479main: -> 0.0005s3480main: -- transaction_open?()3481main: -> 0.0000s3482main: -- current_schema()3483main: -> 0.0005s3484main: -- transaction_open?()3485main: -> 0.0000s3486main: -- execute("ALTER TABLE chat_names\nADD CONSTRAINT check_2b0a0d0f0f\nCHECK ( integration_id IS NOT NULL )\nNOT VALID;\n")3487main: -> 0.0008s3488main: -- current_schema()3489main: -> 0.0005s3490main: -- execute("ALTER TABLE chat_names VALIDATE CONSTRAINT check_2b0a0d0f0f;")3491main: -> 0.0007s3492main: -- indexes(:chat_names)3493main: -> 0.0032s3494main: -- transaction_open?()3495main: -> 0.0000s3496main: -- view_exists?(:postgres_partitions)3497main: -> 0.0010s3498main: -- index_exists?(:chat_names, ["integration_id", "team_id", "chat_id"], {:unique=>true, :name=>"index_chat_names_on_integration_id_and_team_id_and_chat_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})3499main: -> 0.0031s3500main: -- add_index(:chat_names, ["integration_id", "team_id", "chat_id"], {:unique=>true, :name=>"index_chat_names_on_integration_id_and_team_id_and_chat_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})3501main: -> 0.0015s3502main: -- transaction_open?()3503main: -> 0.0000s3504main: -- view_exists?(:postgres_partitions)3505main: -> 0.0010s3506main: -- index_exists?(:chat_names, ["user_id", "integration_id"], {:unique=>true, :name=>"index_chat_names_on_user_id_and_integration_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})3507main: -> 0.0038s3508main: -- add_index(:chat_names, ["user_id", "integration_id"], {:unique=>true, :name=>"index_chat_names_on_user_id_and_integration_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})3509main: -> 0.0014s3510main: -- foreign_keys(:chat_names)3511main: -> 0.0029s3512main: -- transaction_open?()3513main: -> 0.0000s3514main: -- foreign_keys("chat_names")3515main: -> 0.0030s3516main: -- transaction_open?()3517main: -> 0.0000s3518main: -- execute("ALTER TABLE chat_names\nADD CONSTRAINT fk_99a1348daf\nFOREIGN KEY (integration_id)\nREFERENCES integrations (id)\nON DELETE CASCADE\nNOT VALID;\n")3519main: -> 0.0011s3520main: -- execute("ALTER TABLE chat_names VALIDATE CONSTRAINT fk_99a1348daf;")3521main: -> 0.0013s3522main: -- transaction_open?()3523main: -> 0.0000s3524main: -- column_exists?(:chat_names, :service_id)3525main: -> 0.0022s3526main: -- column_exists?(:chat_names, :integration_id)3527main: -> 0.0019s3528main: -- current_schema()3529main: -> 0.0005s3530main: -- transaction_open?()3531main: -> 0.0000s3532main: -- quote_table_name(:chat_names)3533main: -> 0.0000s3534main: -- quote_column_name(:service_id)3535main: -> 0.0000s3536main: -- quote_column_name(:integration_id)3537main: -> 0.0001s3538main: -- columns(:chat_names)3539main: -> 0.0022s3540main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_1f60638bd578()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n IF NEW.\"service_id\" IS NOT DISTINCT FROM NULL AND NEW.\"integration_id\" IS DISTINCT FROM NULL THEN\n NEW.\"service_id\" = NEW.\"integration_id\";\n END IF;\n\n IF NEW.\"integration_id\" IS NOT DISTINCT FROM NULL AND NEW.\"service_id\" IS DISTINCT FROM NULL THEN\n NEW.\"integration_id\" = NEW.\"service_id\";\n END IF;\n\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_1f60638bd578\nON \"chat_names\";\n\nCREATE TRIGGER trigger_1f60638bd578\nBEFORE INSERT ON \"chat_names\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_1f60638bd578();\n")3541main: -> 0.0012s3542main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_c8a17d951f82()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"service_id\" := NEW.\"integration_id\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_c8a17d951f82\nON \"chat_names\";\n\nCREATE TRIGGER trigger_c8a17d951f82\nBEFORE UPDATE OF \"integration_id\" ON \"chat_names\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_c8a17d951f82();\n")3543main: -> 0.0010s3544main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_f8e2b22c21c8()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"integration_id\" := NEW.\"service_id\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_f8e2b22c21c8\nON \"chat_names\";\n\nCREATE TRIGGER trigger_f8e2b22c21c8\nBEFORE UPDATE OF \"service_id\" ON \"chat_names\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_f8e2b22c21c8();\n")3545main: -> 0.0009s3546main: == 20220707105335 RenameChatNameServiceIdToIntegrationId: migrated (0.0845s) ==3547main: == 20220707105529 CleanupChatNameServiceId: migrating =========================3548main: -- column_exists?(:chat_names, :service_id)3549main: -> 0.0026s3550main: -- transaction_open?()3551main: -> 0.0000s3552main: -- quote_table_name(:chat_names)3553main: -> 0.0000s3554main: -- execute("DROP TRIGGER IF EXISTS trigger_1f60638bd578\nON \"chat_names\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_1f60638bd578;\n")3555main: -> 0.0009s3556main: -- execute("DROP TRIGGER IF EXISTS trigger_c8a17d951f82\nON \"chat_names\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_c8a17d951f82;\n")3557main: -> 0.0007s3558main: -- execute("DROP TRIGGER IF EXISTS trigger_f8e2b22c21c8\nON \"chat_names\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_f8e2b22c21c8;\n")3559main: -> 0.0007s3560main: -- remove_column(:chat_names, :service_id)3561main: -> 0.0012s3562main: == 20220707105529 CleanupChatNameServiceId: migrated (0.0105s) ================3563main: == 20220707160707 RenameSlackIntegrationServiceIdToIntegrationId: migrating ===3564main: -- transaction_open?()3565main: -> 0.0000s3566main: -- columns(:slack_integrations)3567main: -> 0.0024s3568main: -- column_exists?(:slack_integrations, :id)3569main: -> 0.0019s3570main: -- column_exists?(:slack_integrations, :integration_id)3571main: -> 0.0018s3572main: -- columns(:slack_integrations)3573main: -> 0.0018s3574main: -- add_column(:slack_integrations, :integration_id, :integer, {:limit=>4, :precision=>nil, :scale=>nil})3575main: -> 0.0009s3576main: -- transaction_open?()3577main: -> 0.0000s3578main: -- exec_query("SELECT COUNT(*) AS count FROM \"slack_integrations\"")3579main: -> 0.0009s3580main: -- current_schema()3581main: -> 0.0004s3582main: -- transaction_open?()3583main: -> 0.0000s3584main: -- current_schema()3585main: -> 0.0004s3586main: -- transaction_open?()3587main: -> 0.0000s3588main: -- execute("ALTER TABLE slack_integrations\nADD CONSTRAINT check_c9ca9ae80d\nCHECK ( integration_id IS NOT NULL )\nNOT VALID;\n")3589main: -> 0.0007s3590main: -- current_schema()3591main: -> 0.0005s3592main: -- execute("ALTER TABLE slack_integrations VALIDATE CONSTRAINT check_c9ca9ae80d;")3593main: -> 0.0008s3594main: -- indexes(:slack_integrations)3595main: -> 0.0037s3596main: -- transaction_open?()3597main: -> 0.0000s3598main: -- view_exists?(:postgres_partitions)3599main: -> 0.0010s3600main: -- index_exists?(:slack_integrations, ["integration_id"], {:unique=>false, :name=>"index_slack_integrations_on_integration_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})3601main: -> 0.0035s3602main: -- add_index(:slack_integrations, ["integration_id"], {:unique=>false, :name=>"index_slack_integrations_on_integration_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})3603main: -> 0.0012s3604main: -- foreign_keys(:slack_integrations)3605main: -> 0.0029s3606main: -- transaction_open?()3607main: -> 0.0000s3608main: -- foreign_keys("slack_integrations")3609main: -> 0.0027s3610main: -- transaction_open?()3611main: -> 0.0001s3612main: -- execute("ALTER TABLE slack_integrations\nADD CONSTRAINT fk_cbe270434e\nFOREIGN KEY (integration_id)\nREFERENCES integrations (id)\nON DELETE CASCADE\nNOT VALID;\n")3613main: -> 0.0012s3614main: -- execute("ALTER TABLE slack_integrations VALIDATE CONSTRAINT fk_cbe270434e;")3615main: -> 0.0010s3616main: -- transaction_open?()3617main: -> 0.0000s3618main: -- column_exists?(:slack_integrations, :service_id)3619main: -> 0.0021s3620main: -- column_exists?(:slack_integrations, :integration_id)3621main: -> 0.0020s3622main: -- current_schema()3623main: -> 0.0004s3624main: -- transaction_open?()3625main: -> 0.0000s3626main: -- quote_table_name(:slack_integrations)3627main: -> 0.0000s3628main: -- quote_column_name(:service_id)3629main: -> 0.0000s3630main: -- quote_column_name(:integration_id)3631main: -> 0.0000s3632main: -- columns(:slack_integrations)3633main: -> 0.0020s3634main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_1f18aa980b4c()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n IF NEW.\"service_id\" IS NOT DISTINCT FROM NULL AND NEW.\"integration_id\" IS DISTINCT FROM NULL THEN\n NEW.\"service_id\" = NEW.\"integration_id\";\n END IF;\n\n IF NEW.\"integration_id\" IS NOT DISTINCT FROM NULL AND NEW.\"service_id\" IS DISTINCT FROM NULL THEN\n NEW.\"integration_id\" = NEW.\"service_id\";\n END IF;\n\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_1f18aa980b4c\nON \"slack_integrations\";\n\nCREATE TRIGGER trigger_1f18aa980b4c\nBEFORE INSERT ON \"slack_integrations\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_1f18aa980b4c();\n")3635main: -> 0.0010s3636main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_28f5371a13a0()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"service_id\" := NEW.\"integration_id\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_28f5371a13a0\nON \"slack_integrations\";\n\nCREATE TRIGGER trigger_28f5371a13a0\nBEFORE UPDATE OF \"integration_id\" ON \"slack_integrations\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_28f5371a13a0();\n")3637main: -> 0.0009s3638main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_aa6bceabba15()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"integration_id\" := NEW.\"service_id\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_aa6bceabba15\nON \"slack_integrations\";\n\nCREATE TRIGGER trigger_aa6bceabba15\nBEFORE UPDATE OF \"service_id\" ON \"slack_integrations\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_aa6bceabba15();\n")3639main: -> 0.0010s3640main: == 20220707160707 RenameSlackIntegrationServiceIdToIntegrationId: migrated (0.0674s) 3641main: == 20220707160921 CleanupSlackIntegrationServiceId: migrating =================3642main: -- column_exists?(:slack_integrations, :service_id)3643main: -> 0.0021s3644main: -- transaction_open?()3645main: -> 0.0000s3646main: -- quote_table_name(:slack_integrations)3647main: -> 0.0000s3648main: -- execute("DROP TRIGGER IF EXISTS trigger_1f18aa980b4c\nON \"slack_integrations\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_1f18aa980b4c;\n")3649main: -> 0.0008s3650main: -- execute("DROP TRIGGER IF EXISTS trigger_28f5371a13a0\nON \"slack_integrations\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_28f5371a13a0;\n")3651main: -> 0.0007s3652main: -- execute("DROP TRIGGER IF EXISTS trigger_aa6bceabba15\nON \"slack_integrations\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_aa6bceabba15;\n")3653main: -> 0.0007s3654main: -- remove_column(:slack_integrations, :service_id)3655main: -> 0.0011s3656main: == 20220707160921 CleanupSlackIntegrationServiceId: migrated (0.0093s) ========3657main: == 20220707181910 CreateMemberRoles: migrating ================================3658main: -- create_table(:member_roles, {})3659main: -> 0.0042s3660main: == 20220707181910 CreateMemberRoles: migrated (0.0044s) =======================3661main: == 20220707181920 AddMemberRoleIdToMembers: migrating =========================3662main: -- add_column(:members, :member_role_id, :bigint)3663main: -> 0.0008s3664main: == 20220707181920 AddMemberRoleIdToMembers: migrated (0.0010s) ================3665main: == 20220707181930 AddMemberRolesRelationToMembers: migrating ==================3666main: -- transaction_open?()3667main: -> 0.0000s3668main: -- view_exists?(:postgres_partitions)3669main: -> 0.0010s3670main: -- index_exists?(:members, :member_role_id, {:name=>"index_members_on_member_role_id", :algorithm=>:concurrently})3671main: -> 0.0114s3672main: -- add_index(:members, :member_role_id, {:name=>"index_members_on_member_role_id", :algorithm=>:concurrently})3673main: -> 0.0014s3674main: -- transaction_open?()3675main: -> 0.0000s3676main: -- foreign_keys(:members)3677main: -> 0.0029s3678main: -- transaction_open?()3679main: -> 0.0000s3680main: -- execute("ALTER TABLE members\nADD CONSTRAINT fk_5e12d50db3\nFOREIGN KEY (member_role_id)\nREFERENCES member_roles (id)\nON DELETE CASCADE\nNOT VALID;\n")3681main: -> 0.0010s3682main: -- execute("ALTER TABLE members VALIDATE CONSTRAINT fk_5e12d50db3;")3683main: -> 0.0011s3684main: == 20220707181930 AddMemberRolesRelationToMembers: migrated (0.0290s) =========3685main: == 20220707190546 AddPlanLimitsMaxSizeCyclonedxReportColumn: migrating ========3686main: -- add_column(:plan_limits, :ci_max_artifact_size_cyclonedx, :integer, {:null=>false, :default=>1})3687main: -> 0.0019s3688main: == 20220707190546 AddPlanLimitsMaxSizeCyclonedxReportColumn: migrated (0.0021s) 3689main: == 20220707192420 RemoveTmpIdxMergeRequestsDraftAndStatus: migrating ==========3690main: -- transaction_open?()3691main: -> 0.0000s3692main: -- view_exists?(:postgres_partitions)3693main: -> 0.0009s3694main: -- indexes(:merge_requests)3695main: -> 0.0452s3696main: -- remove_index(:merge_requests, {:algorithm=>:concurrently, :name=>"tmp_index_merge_requests_draft_and_status"})3697main: -> 0.0015s3698main: == 20220707192420 RemoveTmpIdxMergeRequestsDraftAndStatus: migrated (0.0539s) =3699main: == 20220708100508 DropIndexOnCiRunnerVersionsOnStatus: migrating ==============3700main: -- transaction_open?()3701main: -> 0.0000s3702main: -- view_exists?(:postgres_partitions)3703main: -> 0.0010s3704main: -- indexes(:ci_runner_versions)3705main: -> 0.0023s3706main: -- remove_index(:ci_runner_versions, {:algorithm=>:concurrently, :name=>"index_ci_runner_versions_on_status"})3707main: -> 0.0009s3708main: == 20220708100508 DropIndexOnCiRunnerVersionsOnStatus: migrated (0.0105s) =====3709main: == 20220708100532 AddUniqueIndexOnCiRunnerVersionsOnStatusAndVersion: migrating 3710main: -- transaction_open?()3711main: -> 0.0000s3712main: -- view_exists?(:postgres_partitions)3713main: -> 0.0010s3714main: -- index_exists?(:ci_runner_versions, [:status, :version], {:name=>"index_ci_runner_versions_on_unique_status_and_version", :unique=>true, :algorithm=>:concurrently})3715main: -> 0.0017s3716main: -- add_index(:ci_runner_versions, [:status, :version], {:name=>"index_ci_runner_versions_on_unique_status_and_version", :unique=>true, :algorithm=>:concurrently})3717main: -> 0.0011s3718main: == 20220708100532 AddUniqueIndexOnCiRunnerVersionsOnStatusAndVersion: migrated (0.0102s) 3719main: == 20220708132701 CreateVulnerabilityMergeRequestLinks: migrating =============3720main: -- create_table(:vulnerability_merge_request_links, {})3721main: -> 0.0031s3722main: -- add_index(:vulnerability_merge_request_links, [:vulnerability_id, :merge_request_id], {:unique=>true, :name=>"unique_vuln_merge_request_link_vuln_id_and_mr_id"})3723main: -> 0.0009s3724main: == 20220708132701 CreateVulnerabilityMergeRequestLinks: migrated (0.0043s) ====3725main: == 20220708142744 AddCompositeIndexForProtectedEnvironments: migrating ========3726main: -- transaction_open?()3727main: -> 0.0000s3728main: -- view_exists?(:postgres_partitions)3729main: -> 0.0010s3730main: -- index_exists?(:protected_environments, [:required_approval_count, :created_at], {:name=>"index_protected_environments_on_approval_count_and_created_at", :algorithm=>:concurrently})3731main: -> 0.0037s3732main: -- add_index(:protected_environments, [:required_approval_count, :created_at], {:name=>"index_protected_environments_on_approval_count_and_created_at", :algorithm=>:concurrently})3733main: -> 0.0013s3734main: == 20220708142744 AddCompositeIndexForProtectedEnvironments: migrated (0.0127s) 3735main: == 20220708142803 AddCompositeIndexForProtectedEnvironmentApprovalRules: migrating 3736main: -- transaction_open?()3737main: -> 0.0000s3738main: -- view_exists?(:postgres_partitions)3739main: -> 0.0010s3740main: -- index_exists?(:protected_environment_approval_rules, [:required_approvals, :created_at], {:name=>"index_pe_approval_rules_on_required_approvals_and_created_at", :algorithm=>:concurrently})3741main: -> 0.0036s3742main: -- add_index(:protected_environment_approval_rules, [:required_approvals, :created_at], {:name=>"index_pe_approval_rules_on_required_approvals_and_created_at", :algorithm=>:concurrently})3743main: -> 0.0014s3744main: == 20220708142803 AddCompositeIndexForProtectedEnvironmentApprovalRules: migrated (0.0131s) 3745main: == 20220708150315 AddVulnerabilitiesForeignKeyToVulnerabilityMergeRequestLinks: migrating 3746main: -- transaction_open?()3747main: -> 0.0000s3748main: -- foreign_keys(:vulnerability_merge_request_links)3749main: -> 0.0030s3750main: -- transaction_open?()3751main: -> 0.0000s3752main: -- execute("ALTER TABLE vulnerability_merge_request_links\nADD CONSTRAINT fk_2ef3954596\nFOREIGN KEY (vulnerability_id)\nREFERENCES vulnerabilities (id)\nON DELETE CASCADE\nNOT VALID;\n")3753main: -> 0.0018s3754main: -- execute("ALTER TABLE vulnerability_merge_request_links VALIDATE CONSTRAINT fk_2ef3954596;")3755main: -> 0.0014s3756main: == 20220708150315 AddVulnerabilitiesForeignKeyToVulnerabilityMergeRequestLinks: migrated (0.0105s) 3757main: == 20220708150335 AddMergeRequestsForeignKeyToVulnerabilityMergeRequestLinks: migrating 3758main: -- transaction_open?()3759main: -> 0.0000s3760main: -- foreign_keys(:vulnerability_merge_request_links)3761main: -> 0.0033s3762main: -- transaction_open?()3763main: -> 0.0000s3764main: -- execute("ALTER TABLE vulnerability_merge_request_links\nADD CONSTRAINT fk_6d7aa8796e\nFOREIGN KEY (merge_request_id)\nREFERENCES merge_requests (id)\nON DELETE CASCADE\nNOT VALID;\n")3765main: -> 0.0012s3766main: -- execute("ALTER TABLE vulnerability_merge_request_links VALIDATE CONSTRAINT fk_6d7aa8796e;")3767main: -> 0.0019s3768main: == 20220708150335 AddMergeRequestsForeignKeyToVulnerabilityMergeRequestLinks: migrated (0.0111s) 3769main: == 20220708184822 CleanupBackfillDraftStatusOnMergeRequests: migrating ========3770main: == 20220708184822 CleanupBackfillDraftStatusOnMergeRequests: migrated (0.0001s) 3771main: == 20220711142148 AddInvitationFlowEnforcementToApplicationSettings: migrating 3772main: -- add_column(:application_settings, :invitation_flow_enforcement, :boolean, {:default=>false, :null=>false})3773main: -> 0.0036s3774main: == 20220711142148 AddInvitationFlowEnforcementToApplicationSettings: migrated (0.0038s) 3775main: == 20220712025712 UpdateInsertOrUpdateVulnerabilityReadsFunction: migrating ===3776main: -- execute("CREATE OR REPLACE FUNCTION insert_or_update_vulnerability_reads() RETURNS trigger\n LANGUAGE plpgsql\n AS $$\nDECLARE\n severity smallint;\n state smallint;\n report_type smallint;\n resolved_on_default_branch boolean;\n present_on_default_branch boolean;\nBEGIN\n IF (NEW.vulnerability_id IS NULL AND (TG_OP = 'INSERT' OR TG_OP = 'UPDATE')) THEN\n RETURN NULL;\n END IF;\n\n IF (TG_OP = 'UPDATE' AND OLD.vulnerability_id IS NOT NULL AND NEW.vulnerability_id IS NOT NULL) THEN\n RETURN NULL;\n END IF;\n\n SELECT\n vulnerabilities.severity, vulnerabilities.state, vulnerabilities.report_type, vulnerabilities.resolved_on_default_branch, vulnerabilities.present_on_default_branch\n INTO\n severity, state, report_type, resolved_on_default_branch, present_on_default_branch\n FROM\n vulnerabilities\n WHERE\n vulnerabilities.id = NEW.vulnerability_id;\n\n IF present_on_default_branch IS NOT true THEN\n RETURN NULL;\n END IF;\n\n INSERT INTO vulnerability_reads (vulnerability_id, project_id, scanner_id, report_type, severity, state, resolved_on_default_branch, uuid, location_image, cluster_agent_id, casted_cluster_agent_id)\n VALUES (NEW.vulnerability_id, NEW.project_id, NEW.scanner_id, report_type, severity, state, resolved_on_default_branch, NEW.uuid::uuid, NEW.location->>'image', NEW.location->'kubernetes_resource'->>'agent_id', CAST(NEW.location->'kubernetes_resource'->>'agent_id' AS bigint))\n ON CONFLICT(vulnerability_id) DO NOTHING;\n RETURN NULL;\nEND\n$$;\n")3777main: -> 0.0010s3778main: == 20220712025712 UpdateInsertOrUpdateVulnerabilityReadsFunction: migrated (0.0013s) 3779main: == 20220712031923 CreateVulnerabilityReadsForAnExistingVulnerabilityRecord: migrating 3780main: -- execute("CREATE OR REPLACE FUNCTION insert_vulnerability_reads_from_vulnerability() RETURNS trigger\n LANGUAGE plpgsql\n AS $$\nDECLARE\n scanner_id bigint;\n uuid uuid;\n location_image text;\n cluster_agent_id text;\n casted_cluster_agent_id bigint;\nBEGIN\n SELECT\n v_o.scanner_id, v_o.uuid, v_o.location->>'image', v_o.location->'kubernetes_resource'->>'agent_id', CAST(v_o.location->'kubernetes_resource'->>'agent_id' AS bigint)\n INTO\n scanner_id, uuid, location_image, cluster_agent_id, casted_cluster_agent_id\n FROM\n vulnerability_occurrences v_o\n WHERE\n v_o.vulnerability_id = NEW.id\n LIMIT 1;\n\n INSERT INTO vulnerability_reads (vulnerability_id, project_id, scanner_id, report_type, severity, state, resolved_on_default_branch, uuid, location_image, cluster_agent_id, casted_cluster_agent_id)\n VALUES (NEW.id, NEW.project_id, scanner_id, NEW.report_type, NEW.severity, NEW.state, NEW.resolved_on_default_branch, uuid::uuid, location_image, cluster_agent_id, casted_cluster_agent_id)\n ON CONFLICT(vulnerability_id) DO NOTHING;\n RETURN NULL;\nEND\n$$;\n")3781main: -> 0.0009s3782main: -- execute("DROP TRIGGER IF EXISTS trigger_insert_vulnerability_reads_from_vulnerability ON vulnerabilities;\n")3783main: -> 0.0007s3784main: -- execute("CREATE TRIGGER trigger_insert_vulnerability_reads_from_vulnerability\nAFTER UPDATE ON vulnerabilities\nFOR EACH ROW\nWHEN (\n OLD.present_on_default_branch IS NOT true AND NEW.present_on_default_branch IS true\n)\nEXECUTE PROCEDURE insert_vulnerability_reads_from_vulnerability();\n")3785main: -> 0.0008s3786main: == 20220712031923 CreateVulnerabilityReadsForAnExistingVulnerabilityRecord: migrated (0.0027s) 3787main: == 20220712094945 AddIncludeForFreeUserCapPreviewToNamespaceSettings: migrating 3788main: -- add_column(:namespace_settings, :include_for_free_user_cap_preview, :boolean, {:null=>false, :default=>false})3789main: -> 0.0017s3790main: == 20220712094945 AddIncludeForFreeUserCapPreviewToNamespaceSettings: migrated (0.0019s) 3791main: == 20220712131513 RenameIssueTrackerDataServiceIdToIntegrationId: migrating ===3792main: -- transaction_open?()3793main: -> 0.0000s3794main: -- columns(:issue_tracker_data)3795main: -> 0.0025s3796main: -- column_exists?(:issue_tracker_data, :id)3797main: -> 0.0020s3798main: -- column_exists?(:issue_tracker_data, :integration_id)3799main: -> 0.0021s3800main: -- columns(:issue_tracker_data)3801main: -> 0.0021s3802main: -- add_column(:issue_tracker_data, :integration_id, :integer, {:limit=>4, :precision=>nil, :scale=>nil})3803main: -> 0.0011s3804main: -- transaction_open?()3805main: -> 0.0000s3806main: -- exec_query("SELECT COUNT(*) AS count FROM \"issue_tracker_data\"")3807main: -> 0.0009s3808main: -- current_schema()3809main: -> 0.0005s3810main: -- transaction_open?()3811main: -> 0.0000s3812main: -- current_schema()3813main: -> 0.0005s3814main: -- transaction_open?()3815main: -> 0.0000s3816main: -- execute("ALTER TABLE issue_tracker_data\nADD CONSTRAINT check_7ca00cd891\nCHECK ( integration_id IS NOT NULL )\nNOT VALID;\n")3817main: -> 0.0008s3818main: -- current_schema()3819main: -> 0.0005s3820main: -- execute("ALTER TABLE issue_tracker_data VALIDATE CONSTRAINT check_7ca00cd891;")3821main: -> 0.0008s3822main: -- indexes(:issue_tracker_data)3823main: -> 0.0024s3824main: -- transaction_open?()3825main: -> 0.0000s3826main: -- view_exists?(:postgres_partitions)3827main: -> 0.0009s3828main: -- index_exists?(:issue_tracker_data, ["integration_id"], {:unique=>false, :name=>"index_issue_tracker_data_on_integration_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})3829main: -> 0.0025s3830main: -- add_index(:issue_tracker_data, ["integration_id"], {:unique=>false, :name=>"index_issue_tracker_data_on_integration_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})3831main: -> 0.0015s3832main: -- foreign_keys(:issue_tracker_data)3833main: -> 0.0031s3834main: -- transaction_open?()3835main: -> 0.0000s3836main: -- foreign_keys("issue_tracker_data")3837main: -> 0.0029s3838main: -- transaction_open?()3839main: -> 0.0000s3840main: -- execute("ALTER TABLE issue_tracker_data\nADD CONSTRAINT fk_33921c0ee1\nFOREIGN KEY (integration_id)\nREFERENCES integrations (id)\nON DELETE CASCADE\nNOT VALID;\n")3841main: -> 0.0011s3842main: -- execute("ALTER TABLE issue_tracker_data VALIDATE CONSTRAINT fk_33921c0ee1;")3843main: -> 0.0011s3844main: -- transaction_open?()3845main: -> 0.0000s3846main: -- column_exists?(:issue_tracker_data, :service_id)3847main: -> 0.0021s3848main: -- column_exists?(:issue_tracker_data, :integration_id)3849main: -> 0.0019s3850main: -- current_schema()3851main: -> 0.0005s3852main: -- transaction_open?()3853main: -> 0.0000s3854main: -- quote_table_name(:issue_tracker_data)3855main: -> 0.0000s3856main: -- quote_column_name(:service_id)3857main: -> 0.0000s3858main: -- quote_column_name(:integration_id)3859main: -> 0.0000s3860main: -- columns(:issue_tracker_data)3861main: -> 0.0021s3862main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_34908e7e0c0f()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n IF NEW.\"service_id\" IS NOT DISTINCT FROM NULL AND NEW.\"integration_id\" IS DISTINCT FROM NULL THEN\n NEW.\"service_id\" = NEW.\"integration_id\";\n END IF;\n\n IF NEW.\"integration_id\" IS NOT DISTINCT FROM NULL AND NEW.\"service_id\" IS DISTINCT FROM NULL THEN\n NEW.\"integration_id\" = NEW.\"service_id\";\n END IF;\n\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_34908e7e0c0f\nON \"issue_tracker_data\";\n\nCREATE TRIGGER trigger_34908e7e0c0f\nBEFORE INSERT ON \"issue_tracker_data\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_34908e7e0c0f();\n")3863main: -> 0.0012s3864main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_1376bf09038b()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"service_id\" := NEW.\"integration_id\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_1376bf09038b\nON \"issue_tracker_data\";\n\nCREATE TRIGGER trigger_1376bf09038b\nBEFORE UPDATE OF \"integration_id\" ON \"issue_tracker_data\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_1376bf09038b();\n")3865main: -> 0.0009s3866main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_7b472c15ea53()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"integration_id\" := NEW.\"service_id\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_7b472c15ea53\nON \"issue_tracker_data\";\n\nCREATE TRIGGER trigger_7b472c15ea53\nBEFORE UPDATE OF \"service_id\" ON \"issue_tracker_data\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_7b472c15ea53();\n")3867main: -> 0.0010s3868main: == 20220712131513 RenameIssueTrackerDataServiceIdToIntegrationId: migrated (0.0686s) 3869main: == 20220712131533 CleanupIssueTrackerDataServiceId: migrating =================3870main: -- column_exists?(:issue_tracker_data, :service_id)3871main: -> 0.0021s3872main: -- transaction_open?()3873main: -> 0.0000s3874main: -- quote_table_name(:issue_tracker_data)3875main: -> 0.0000s3876main: -- execute("DROP TRIGGER IF EXISTS trigger_34908e7e0c0f\nON \"issue_tracker_data\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_34908e7e0c0f;\n")3877main: -> 0.0007s3878main: -- execute("DROP TRIGGER IF EXISTS trigger_1376bf09038b\nON \"issue_tracker_data\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_1376bf09038b;\n")3879main: -> 0.0011s3880main: -- execute("DROP TRIGGER IF EXISTS trigger_7b472c15ea53\nON \"issue_tracker_data\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_7b472c15ea53;\n")3881main: -> 0.0015s3882main: -- remove_column(:issue_tracker_data, :service_id)3883main: -> 0.0016s3884main: == 20220712131533 CleanupIssueTrackerDataServiceId: migrated (0.0109s) ========3885main: == 20220712144843 RenameJiraTrackerDataServiceIdToIntegrationId: migrating ====3886main: -- transaction_open?()3887main: -> 0.0000s3888main: -- columns(:jira_tracker_data)3889main: -> 0.0030s3890main: -- column_exists?(:jira_tracker_data, :id)3891main: -> 0.0024s3892main: -- column_exists?(:jira_tracker_data, :integration_id)3893main: -> 0.0025s3894main: -- columns(:jira_tracker_data)3895main: -> 0.0021s3896main: -- add_column(:jira_tracker_data, :integration_id, :integer, {:limit=>4, :precision=>nil, :scale=>nil})3897main: -> 0.0010s3898main: -- transaction_open?()3899main: -> 0.0000s3900main: -- exec_query("SELECT COUNT(*) AS count FROM \"jira_tracker_data\"")3901main: -> 0.0009s3902main: -- current_schema()3903main: -> 0.0005s3904main: -- transaction_open?()3905main: -> 0.0000s3906main: -- current_schema()3907main: -> 0.0005s3908main: -- transaction_open?()3909main: -> 0.0000s3910main: -- execute("ALTER TABLE jira_tracker_data\nADD CONSTRAINT check_0fbd71d9f2\nCHECK ( integration_id IS NOT NULL )\nNOT VALID;\n")3911main: -> 0.0008s3912main: -- current_schema()3913main: -> 0.0005s3914main: -- execute("ALTER TABLE jira_tracker_data VALIDATE CONSTRAINT check_0fbd71d9f2;")3915main: -> 0.0007s3916main: -- indexes(:jira_tracker_data)3917main: -> 0.0023s3918main: -- transaction_open?()3919main: -> 0.0000s3920main: -- view_exists?(:postgres_partitions)3921main: -> 0.0009s3922main: -- index_exists?(:jira_tracker_data, ["integration_id"], {:unique=>false, :name=>"index_jira_tracker_data_on_integration_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})3923main: -> 0.0022s3924main: -- add_index(:jira_tracker_data, ["integration_id"], {:unique=>false, :name=>"index_jira_tracker_data_on_integration_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})3925main: -> 0.0012s3926main: -- foreign_keys(:jira_tracker_data)3927main: -> 0.0028s3928main: -- transaction_open?()3929main: -> 0.0000s3930main: -- foreign_keys("jira_tracker_data")3931main: -> 0.0027s3932main: -- transaction_open?()3933main: -> 0.0000s3934main: -- execute("ALTER TABLE jira_tracker_data\nADD CONSTRAINT fk_c98abcd54c\nFOREIGN KEY (integration_id)\nREFERENCES integrations (id)\nON DELETE CASCADE\nNOT VALID;\n")3935main: -> 0.0012s3936main: -- execute("ALTER TABLE jira_tracker_data VALIDATE CONSTRAINT fk_c98abcd54c;")3937main: -> 0.0010s3938main: -- transaction_open?()3939main: -> 0.0000s3940main: -- column_exists?(:jira_tracker_data, :service_id)3941main: -> 0.0023s3942main: -- column_exists?(:jira_tracker_data, :integration_id)3943main: -> 0.0021s3944main: -- current_schema()3945main: -> 0.0004s3946main: -- transaction_open?()3947main: -> 0.0000s3948main: -- quote_table_name(:jira_tracker_data)3949main: -> 0.0000s3950main: -- quote_column_name(:service_id)3951main: -> 0.0000s3952main: -- quote_column_name(:integration_id)3953main: -> 0.0000s3954main: -- columns(:jira_tracker_data)3955main: -> 0.0022s3956main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_d1b52a055c23()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n IF NEW.\"service_id\" IS NOT DISTINCT FROM NULL AND NEW.\"integration_id\" IS DISTINCT FROM NULL THEN\n NEW.\"service_id\" = NEW.\"integration_id\";\n END IF;\n\n IF NEW.\"integration_id\" IS NOT DISTINCT FROM NULL AND NEW.\"service_id\" IS DISTINCT FROM NULL THEN\n NEW.\"integration_id\" = NEW.\"service_id\";\n END IF;\n\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_d1b52a055c23\nON \"jira_tracker_data\";\n\nCREATE TRIGGER trigger_d1b52a055c23\nBEFORE INSERT ON \"jira_tracker_data\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_d1b52a055c23();\n")3957main: -> 0.0010s3958main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_001da65379d1()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"service_id\" := NEW.\"integration_id\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_001da65379d1\nON \"jira_tracker_data\";\n\nCREATE TRIGGER trigger_001da65379d1\nBEFORE UPDATE OF \"integration_id\" ON \"jira_tracker_data\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_001da65379d1();\n")3959main: -> 0.0008s3960main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_e2abd66db099()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"integration_id\" := NEW.\"service_id\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_e2abd66db099\nON \"jira_tracker_data\";\n\nCREATE TRIGGER trigger_e2abd66db099\nBEFORE UPDATE OF \"service_id\" ON \"jira_tracker_data\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_e2abd66db099();\n")3961main: -> 0.0008s3962main: == 20220712144843 RenameJiraTrackerDataServiceIdToIntegrationId: migrated (0.0665s) 3963main: == 20220712144900 CleanupJiraTrackerDataServiceId: migrating ==================3964main: -- column_exists?(:jira_tracker_data, :service_id)3965main: -> 0.0026s3966main: -- transaction_open?()3967main: -> 0.0000s3968main: -- quote_table_name(:jira_tracker_data)3969main: -> 0.0000s3970main: -- execute("DROP TRIGGER IF EXISTS trigger_d1b52a055c23\nON \"jira_tracker_data\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_d1b52a055c23;\n")3971main: -> 0.0008s3972main: -- execute("DROP TRIGGER IF EXISTS trigger_001da65379d1\nON \"jira_tracker_data\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_001da65379d1;\n")3973main: -> 0.0007s3974main: -- execute("DROP TRIGGER IF EXISTS trigger_e2abd66db099\nON \"jira_tracker_data\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_e2abd66db099;\n")3975main: -> 0.0007s3976main: -- remove_column(:jira_tracker_data, :service_id)3977main: -> 0.0011s3978main: == 20220712144900 CleanupJiraTrackerDataServiceId: migrated (0.0098s) =========3979main: == 20220712175029 AddIndexWithTargetTypeToTodos: migrating ====================3980main: -- transaction_open?()3981main: -> 0.0000s3982main: -- view_exists?(:postgres_partitions)3983main: -> 0.0012s3984main: -- index_exists?(:todos, [:project_id, :user_id, :id, :target_type], {:name=>"index_requirements_project_id_user_id_id_and_target_type", :algorithm=>:concurrently})3985main: -> 0.0084s3986main: -- add_index(:todos, [:project_id, :user_id, :id, :target_type], {:name=>"index_requirements_project_id_user_id_id_and_target_type", :algorithm=>:concurrently})3987main: -> 0.0015s3988main: -- transaction_open?()3989main: -> 0.0000s3990main: -- view_exists?(:postgres_partitions)3991main: -> 0.0010s3992main: -- index_exists?(:todos, [:user_id, :target_type], {:name=>"index_requirements_user_id_and_target_type", :algorithm=>:concurrently})3993main: -> 0.0093s3994main: -- add_index(:todos, [:user_id, :target_type], {:name=>"index_requirements_user_id_and_target_type", :algorithm=>:concurrently})3995main: -> 0.0013s3996main: == 20220712175029 AddIndexWithTargetTypeToTodos: migrated (0.0369s) ===========3997main: == 20220712181304 RemoveDeprecatedIndexesFromTodos: migrating =================3998main: -- transaction_open?()3999main: -> 0.0000s4000main: -- view_exists?(:postgres_partitions)4001main: -> 0.0009s4002main: -- indexes(:todos)4003main: -> 0.0093s4004main: -- remove_index(:todos, {:algorithm=>:concurrently, :name=>"index_todos_on_project_id_and_user_id_and_id"})4005main: -> 0.0012s4006main: -- transaction_open?()4007main: -> 0.0000s4008main: -- view_exists?(:postgres_partitions)4009main: -> 0.0009s4010main: -- indexes(:todos)4011main: -> 0.0092s4012main: -- remove_index(:todos, {:algorithm=>:concurrently, :name=>"index_todos_on_user_id"})4013main: -> 0.0010s4014main: == 20220712181304 RemoveDeprecatedIndexesFromTodos: migrated (0.0341s) ========4015main: == 20220713133515 CleanupBackfillDraftStatusesOnMergeRequests: migrating ======4016main: -- transaction_open?()4017main: -> 0.0000s4018main: == 20220713133515 CleanupBackfillDraftStatusesOnMergeRequests: migrated (0.0055s) 4019main: == 20220713175658 AddPackagesCleanupPoliciesWorkerCapacityToApplicationSettings: migrating 4020main: -- add_column(:application_settings, :package_registry_cleanup_policies_worker_capacity, :integer, {:default=>2, :null=>false})4021main: -> 0.0027s4022main: == 20220713175658 AddPackagesCleanupPoliciesWorkerCapacityToApplicationSettings: migrated (0.0029s) 4023main: == 20220713175737 AddApplicationSettingsPackagesCleanupPoliciesWorkerCapacityConstraint: migrating 4024main: -- transaction_open?()4025main: -> 0.0000s4026main: -- current_schema()4027main: -> 0.0005s4028main: -- transaction_open?()4029main: -> 0.0000s4030main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT app_settings_pkg_registry_cleanup_pol_worker_capacity_gte_zero\nCHECK ( package_registry_cleanup_policies_worker_capacity >= 0 )\nNOT VALID;\n")4031main: -> 0.0014s4032main: -- current_schema()4033main: -> 0.0004s4034main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT app_settings_pkg_registry_cleanup_pol_worker_capacity_gte_zero;")4035main: -> 0.0012s4036main: == 20220713175737 AddApplicationSettingsPackagesCleanupPoliciesWorkerCapacityConstraint: migrated (0.0096s) 4037main: == 20220713175812 AddEnabledPoliciesIndexToPackagesCleanupPolicies: migrating =4038main: -- transaction_open?()4039main: -> 0.0000s4040main: -- view_exists?(:postgres_partitions)4041main: -> 0.0012s4042main: -- index_exists?(:packages_cleanup_policies, [:next_run_at, :project_id], {:where=>"keep_n_duplicated_package_files <> 'all'", :name=>"idx_enabled_pkgs_cleanup_policies_on_next_run_at_project_id", :algorithm=>:concurrently})4043main: -> 0.0016s4044main: -- add_index(:packages_cleanup_policies, [:next_run_at, :project_id], {:where=>"keep_n_duplicated_package_files <> 'all'", :name=>"idx_enabled_pkgs_cleanup_policies_on_next_run_at_project_id", :algorithm=>:concurrently})4045main: -> 0.0015s4046main: == 20220713175812 AddEnabledPoliciesIndexToPackagesCleanupPolicies: migrated (0.0113s) 4047main: == 20220714105122 UpdateDefaultProjectImportLevelOnNamespaceSettings: migrating 4048main: -- change_column(:namespace_settings, :project_import_level, :smallint, {:default=>50, :null=>false})4049main: -> 0.0017s4050main: == 20220714105122 UpdateDefaultProjectImportLevelOnNamespaceSettings: migrated (0.0019s) 4051main: == 20220714122311 AddAsyncIndexOnSecurityFindingsIdAndPartitionNumber: migrating 4052main: -- index_exists?(:security_findings, [:id, :partition_number], {:unique=>true, :name=>"security_findings_partitioned_pkey", :algorithm=>:concurrently})4053main: -> 0.0068s4054main: -- add_index_options(:security_findings, [:id, :partition_number], {:unique=>true, :name=>"security_findings_partitioned_pkey", :algorithm=>:concurrently})4055main: -> 0.0002s4056main: == 20220714122311 AddAsyncIndexOnSecurityFindingsIdAndPartitionNumber: migrated (0.0134s) 4057main: == 20220714122418 AddAsyncIndexOnSecurityFindingsUniqueColumns: migrating =====4058main: -- index_exists?(:security_findings, [:uuid, :scan_id, :partition_number], {:unique=>true, :name=>"index_security_findings_on_unique_columns", :algorithm=>:concurrently})4059main: -> 0.0066s4060main: -- add_index_options(:security_findings, [:uuid, :scan_id, :partition_number], {:unique=>true, :name=>"index_security_findings_on_unique_columns", :algorithm=>:concurrently})4061main: -> 0.0001s4062main: == 20220714122418 AddAsyncIndexOnSecurityFindingsUniqueColumns: migrated (0.0136s) 4063main: == 20220714142424 UpdateTriggerUpdateVulnerabilityReadsOnVulnerabilityUpdate: migrating 4064main: -- execute("DROP TRIGGER IF EXISTS trigger_update_vulnerability_reads_on_vulnerability_update ON vulnerabilities")4065main: -> 0.0008s4066main: -- execute("CREATE TRIGGER trigger_update_vulnerability_reads_on_vulnerability_update\nAFTER UPDATE ON vulnerabilities\nFOR EACH ROW\nWHEN (\n OLD.present_on_default_branch IS TRUE AND\n (\n OLD.severity IS DISTINCT FROM NEW.severity OR\n OLD.state IS DISTINCT FROM NEW.state OR\n OLD.resolved_on_default_branch IS DISTINCT FROM NEW.resolved_on_default_branch\n )\n)\nEXECUTE PROCEDURE update_vulnerability_reads_from_vulnerability();\n")4067main: -> 0.0009s4068main: == 20220714142424 UpdateTriggerUpdateVulnerabilityReadsOnVulnerabilityUpdate: migrated (0.0019s) 4069main: == 20220715054506 AddParentLinkUniqueWorkItemIndex: migrating =================4070main: -- transaction_open?()4071main: -> 0.0000s4072main: -- view_exists?(:postgres_partitions)4073main: -> 0.0012s4074main: -- index_exists?(:work_item_parent_links, :work_item_id, {:unique=>true, :name=>"index_work_item_parent_links_on_work_item_id", :algorithm=>:concurrently})4075main: -> 0.0034s4076main: -- add_index(:work_item_parent_links, :work_item_id, {:unique=>true, :name=>"index_work_item_parent_links_on_work_item_id", :algorithm=>:concurrently})4077main: -> 0.0014s4078main: -- transaction_open?()4079main: -> 0.0000s4080main: -- view_exists?(:postgres_partitions)4081main: -> 0.0009s4082main: -- indexes(:work_item_parent_links)4083main: -> 0.0037s4084main: -- remove_index(:work_item_parent_links, {:algorithm=>:concurrently, :name=>"index_parent_links_on_work_item_id_and_work_item_parent_id"})4085main: -> 0.0011s4086main: == 20220715054506 AddParentLinkUniqueWorkItemIndex: migrated (0.0265s) ========4087main: == 20220715152108 BackfillProjectImportLevel: migrating =======================4088main: == 20220715152108 BackfillProjectImportLevel: migrated (0.0308s) ==============4089main: == 20220715160023 DropPostMigrationTestTable: migrating =======================4090main: -- drop_table(:post_migration_test_table)4091main: -> 0.0016s4092main: == 20220715160023 DropPostMigrationTestTable: migrated (0.0018s) ==============4093main: == 20220715163254 UpdateNotesInPast: migrating ================================4094main: == 20220715163254 UpdateNotesInPast: migrated (0.0035s) =======================4095main: == 20220715185348 AddIndexOnSecurityFindingsIdAndPartitionNumber: migrating ===4096main: -- transaction_open?()4097main: -> 0.0000s4098main: -- view_exists?(:postgres_partitions)4099main: -> 0.0011s4100main: -- index_exists?(:security_findings, [:id, :partition_number], {:unique=>true, :name=>"security_findings_partitioned_pkey", :algorithm=>:concurrently})4101main: -> 0.0071s4102main: -- add_index(:security_findings, [:id, :partition_number], {:unique=>true, :name=>"security_findings_partitioned_pkey", :algorithm=>:concurrently})4103main: -> 0.0014s4104main: == 20220715185348 AddIndexOnSecurityFindingsIdAndPartitionNumber: migrated (0.0192s) 4105main: == 20220715185436 AddIndexOnSecurityFindingsUniqueColumns: migrating ==========4106main: -- transaction_open?()4107main: -> 0.0000s4108main: -- view_exists?(:postgres_partitions)4109main: -> 0.0010s4110main: -- index_exists?(:security_findings, [:uuid, :scan_id, :partition_number], {:unique=>true, :name=>"index_security_findings_on_unique_columns", :algorithm=>:concurrently})4111main: -> 0.0072s4112main: -- add_index(:security_findings, [:uuid, :scan_id, :partition_number], {:unique=>true, :name=>"index_security_findings_on_unique_columns", :algorithm=>:concurrently})4113main: -> 0.0016s4114main: == 20220715185436 AddIndexOnSecurityFindingsUniqueColumns: migrated (0.0192s) =4115main: == 20220715190612 DropIndexOnSecurityFindingsUuidAndScanId: migrating =========4116main: -- transaction_open?()4117main: -> 0.0000s4118main: -- view_exists?(:postgres_partitions)4119main: -> 0.0011s4120main: -- indexes(:security_findings)4121main: -> 0.0080s4122main: -- remove_index(:security_findings, {:algorithm=>:concurrently, :name=>"index_security_findings_on_uuid_and_scan_id"})4123main: -> 0.0012s4124main: == 20220715190612 DropIndexOnSecurityFindingsUuidAndScanId: migrated (0.0169s) 4125main: == 20220715191629 ChangePrimaryKeyOfSecurityFindingsTable: migrating ==========4126main: -- execute("ALTER TABLE security_findings DROP CONSTRAINT security_findings_pkey;\n")4127main: -> 0.0009s4128main: -- execute("ALTER TABLE security_findings ADD CONSTRAINT security_findings_pkey PRIMARY KEY USING index security_findings_partitioned_pkey;\n")4129main: -> 0.0009s4130main: == 20220715191629 ChangePrimaryKeyOfSecurityFindingsTable: migrated (0.0020s) =4131main: == 20220718083945 AddUniqueProjectDownloadLimitAllowlistToNamespaceSettings: migrating 4132main: -- add_column(:namespace_settings, :unique_project_download_limit_allowlist, :text, {:array=>true, :default=>[], :null=>false})4133main: -> 0.0021s4134main: == 20220718083945 AddUniqueProjectDownloadLimitAllowlistToNamespaceSettings: migrated (0.0023s) 4135main: == 20220719081542 DropQueuedAtIndexFromCiBuilds: migrating ====================4136main: -- transaction_open?()4137main: -> 0.0000s4138main: -- view_exists?(:postgres_partitions)4139main: -> 0.0011s4140main: -- indexes(:ci_builds)4141main: -> 0.0185s4142main: -- remove_index(:ci_builds, {:algorithm=>:concurrently, :name=>"index_ci_builds_on_queued_at"})4143main: -> 0.0011s4144main: == 20220719081542 DropQueuedAtIndexFromCiBuilds: migrated (0.0275s) ===========4145main: == 20220719165537 RemoveCiRunnersSemverColumn: migrating ======================4146main: -- transaction_open?()4147main: -> 0.0000s4148main: -- remove_column(:ci_runners, :semver)4149main: -> 0.0010s4150main: == 20220719165537 RemoveCiRunnersSemverColumn: migrated (0.0039s) =============4151main: == 20220720090354 RemovePendingBuildsCoveringIndexFromCiBuilds: migrating =====4152main: -- transaction_open?()4153main: -> 0.0000s4154main: -- view_exists?(:postgres_partitions)4155main: -> 0.0011s4156main: -- indexes(:ci_builds)4157main: -> 0.0180s4158main: -- remove_index(:ci_builds, {:algorithm=>:concurrently, :name=>"index_ci_builds_runner_id_pending_covering"})4159main: -> 0.0013s4160main: == 20220720090354 RemovePendingBuildsCoveringIndexFromCiBuilds: migrated (0.0273s) 4161main: == 20220720121421 RemovePatAndSshEnforcementColumnsFromApplicationSettings: migrating 4162main: -- remove_column(:application_settings, :enforce_pat_expiration, :boolean, {:default=>true, :null=>false})4163main: -> 0.0024s4164main: -- remove_column(:application_settings, :enforce_ssh_key_expiration, :boolean, {:default=>true, :null=>false})4165main: -> 0.0013s4166main: == 20220720121421 RemovePatAndSshEnforcementColumnsFromApplicationSettings: migrated (0.0040s) 4167main: == 20220720123249 RemoveTokenColumnFromCiBuilds: migrating ====================4168main: -- remove_column(:ci_builds, :token, :string)4169main: -> 0.0007s4170main: == 20220720123249 RemoveTokenColumnFromCiBuilds: migrated (0.0009s) ===========4171main: == 20220720161816 AddNamespaceIdToVulnerabilityReadsTable: migrating ==========4172main: -- add_column(:vulnerability_reads, :namespace_id, :bigint)4173main: -> 0.0010s4174main: == 20220720161816 AddNamespaceIdToVulnerabilityReadsTable: migrated (0.0012s) =4175main: == 20220720162123 UpdateVulnerabilityReadsTriggersToSetNamespaceId: migrating =4176main: -- execute("CREATE OR REPLACE FUNCTION insert_or_update_vulnerability_reads() RETURNS trigger\n LANGUAGE plpgsql\n AS $$\nDECLARE\n severity smallint;\n state smallint;\n report_type smallint;\n resolved_on_default_branch boolean;\n present_on_default_branch boolean;\n namespace_id bigint;\nBEGIN\n IF (NEW.vulnerability_id IS NULL AND (TG_OP = 'INSERT' OR TG_OP = 'UPDATE')) THEN\n RETURN NULL;\n END IF;\n\n IF (TG_OP = 'UPDATE' AND OLD.vulnerability_id IS NOT NULL AND NEW.vulnerability_id IS NOT NULL) THEN\n RETURN NULL;\n END IF;\n\n SELECT\n vulnerabilities.severity, vulnerabilities.state, vulnerabilities.report_type, vulnerabilities.resolved_on_default_branch, vulnerabilities.present_on_default_branch\n INTO\n severity, state, report_type, resolved_on_default_branch, present_on_default_branch\n FROM\n vulnerabilities\n WHERE\n vulnerabilities.id = NEW.vulnerability_id;\n\n IF present_on_default_branch IS NOT true THEN\n RETURN NULL;\n END IF;\n\n SELECT\n projects.namespace_id\n INTO\n namespace_id\n FROM\n projects\n WHERE\n projects.id = NEW.project_id;\n\n INSERT INTO vulnerability_reads (vulnerability_id, namespace_id, project_id, scanner_id, report_type, severity, state, resolved_on_default_branch, uuid, location_image, cluster_agent_id, casted_cluster_agent_id)\n VALUES (NEW.vulnerability_id, namespace_id, NEW.project_id, NEW.scanner_id, report_type, severity, state, resolved_on_default_branch, NEW.uuid::uuid, NEW.location->>'image', NEW.location->'kubernetes_resource'->>'agent_id', CAST(NEW.location->'kubernetes_resource'->>'agent_id' AS bigint))\n ON CONFLICT(vulnerability_id) DO NOTHING;\n RETURN NULL;\nEND\n$$;\n")4177main: -> 0.0010s4178main: -- execute("CREATE OR REPLACE FUNCTION insert_vulnerability_reads_from_vulnerability() RETURNS trigger\n LANGUAGE plpgsql\n AS $$\nDECLARE\n scanner_id bigint;\n uuid uuid;\n location_image text;\n cluster_agent_id text;\n casted_cluster_agent_id bigint;\n namespace_id bigint;\nBEGIN\n SELECT\n v_o.scanner_id, v_o.uuid, v_o.location->>'image', v_o.location->'kubernetes_resource'->>'agent_id', CAST(v_o.location->'kubernetes_resource'->>'agent_id' AS bigint), projects.namespace_id\n INTO\n scanner_id, uuid, location_image, cluster_agent_id, casted_cluster_agent_id, namespace_id\n FROM\n vulnerability_occurrences v_o\n INNER JOIN projects ON projects.id = v_o.project_id\n WHERE\n v_o.vulnerability_id = NEW.id\n LIMIT 1;\n\n INSERT INTO vulnerability_reads (vulnerability_id, namespace_id, project_id, scanner_id, report_type, severity, state, resolved_on_default_branch, uuid, location_image, cluster_agent_id, casted_cluster_agent_id)\n VALUES (NEW.id, namespace_id, NEW.project_id, scanner_id, NEW.report_type, NEW.severity, NEW.state, NEW.resolved_on_default_branch, uuid::uuid, location_image, cluster_agent_id, casted_cluster_agent_id)\n ON CONFLICT(vulnerability_id) DO NOTHING;\n RETURN NULL;\nEND\n$$;\n")4179main: -> 0.0008s4180main: == 20220720162123 UpdateVulnerabilityReadsTriggersToSetNamespaceId: migrated (0.0021s) 4181main: == 20220720171102 AddIndexOnVulnerabilityReadsNamespaceId: migrating ==========4182main: -- transaction_open?()4183main: -> 0.0000s4184main: -- view_exists?(:postgres_partitions)4185main: -> 0.0012s4186main: -- index_exists?(:vulnerability_reads, [:namespace_id, :state, :severity, :vulnerability_id], {:name=>"index_vuln_reads_on_namespace_id_state_severity_and_vuln_id", :order=>{:vulnerability_id=>:desc}, :algorithm=>:concurrently})4187main: -> 0.0085s4188main: -- add_index(:vulnerability_reads, [:namespace_id, :state, :severity, :vulnerability_id], {:name=>"index_vuln_reads_on_namespace_id_state_severity_and_vuln_id", :order=>{:vulnerability_id=>:desc}, :algorithm=>:concurrently})4189main: -> 0.0017s4190main: == 20220720171102 AddIndexOnVulnerabilityReadsNamespaceId: migrated (0.0189s) =4191main: == 20220720171801 AddForeignKeyOnVulnerabilityReadsNamespaceId: migrating =====4192main: -- transaction_open?()4193main: -> 0.0000s4194main: -- foreign_keys(:vulnerability_reads)4195main: -> 0.0032s4196main: -- transaction_open?()4197main: -> 0.0000s4198main: -- execute("ALTER TABLE vulnerability_reads\nADD CONSTRAINT fk_4f593f6c62\nFOREIGN KEY (namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")4199main: -> 0.0013s4200main: -- execute("ALTER TABLE vulnerability_reads VALIDATE CONSTRAINT fk_4f593f6c62;")4201main: -> 0.0014s4202main: == 20220720171801 AddForeignKeyOnVulnerabilityReadsNamespaceId: migrated (0.0093s) 4203main: == 20220720210446 AddStartDateToIssuesTable: migrating ========================4204main: -- add_column(:issues, :start_date, :date)4205main: -> 0.0009s4206main: == 20220720210446 AddStartDateToIssuesTable: migrated (0.0011s) ===============4207main: == 20220721031446 ScheduleDisableLegacyOpenSourceLicenseForOneMemberNoRepoProjects: migrating 4208main: == 20220721031446 ScheduleDisableLegacyOpenSourceLicenseForOneMemberNoRepoProjects: migrated (0.0001s) 4209main: == 20220721065723 AddIssueBranchTemplateToProjectSettings: migrating ==========4210main: -- transaction_open?()4211main: -> 0.0000s4212main: -- add_column(:project_settings, :issue_branch_template, :text, {:if_not_exists=>true})4213main: -> 0.0034s4214main: -- transaction_open?()4215main: -> 0.0000s4216main: -- current_schema()4217main: -> 0.0005s4218main: -- transaction_open?()4219main: -> 0.0000s4220main: -- execute("ALTER TABLE project_settings\nADD CONSTRAINT check_3ca5cbffe6\nCHECK ( char_length(issue_branch_template) <= 255 )\nNOT VALID;\n")4221main: -> 0.0009s4222main: -- current_schema()4223main: -> 0.0004s4224main: -- execute("ALTER TABLE project_settings VALIDATE CONSTRAINT check_3ca5cbffe6;")4225main: -> 0.0007s4226main: == 20220721065723 AddIssueBranchTemplateToProjectSettings: migrated (0.0143s) =4227main: == 20220721140252 PreparePartialTrigramIndexesForIssues: migrating ============4228main: -- index_exists?(:issues, :title, {:name=>"index_issues_on_title_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u218F]*'", :algorithm=>:concurrently})4229main: -> 0.0226s4230main: -- add_index_options(:issues, :title, {:name=>"index_issues_on_title_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u218F]*'", :algorithm=>:concurrently})4231main: -> 0.0001s4232main: -- index_exists?(:issues, :description, {:name=>"index_issues_on_description_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u218F]*'", :algorithm=>:concurrently})4233main: -> 0.0215s4234main: -- add_index_options(:issues, :description, {:name=>"index_issues_on_description_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u218F]*'", :algorithm=>:concurrently})4235main: -> 0.0001s4236main: == 20220721140252 PreparePartialTrigramIndexesForIssues: migrated (0.0556s) ===4237main: == 20220722084543 ScheduleDisableLegacyOpenSourceLicenseForNoIssuesNoRepoProjects: migrating 4238main: == 20220722084543 ScheduleDisableLegacyOpenSourceLicenseForNoIssuesNoRepoProjects: migrated (0.0002s) 4239main: == 20220722110026 RescheduleSetLegacyOpenSourceLicenseAvailableForNonPublicProjects: migrating 4240main: == 20220722110026 RescheduleSetLegacyOpenSourceLicenseAvailableForNonPublicProjects: migrated (0.0002s) 4241main: == 20220722123318 UpdateDelayedDeletionPeriod: migrating ======================4242main: -- execute("UPDATE application_settings SET\n deletion_adjourned_period = 1,\n delayed_group_deletion = 'f',\n delayed_project_removal ='f'\nWHERE deletion_adjourned_period = 0;\n")4243main: -> 0.0021s4244main: == 20220722123318 UpdateDelayedDeletionPeriod: migrated (0.0023s) =============4245main: == 20220722145845 ScheduleBackfillingTheNamespaceIdForVulnerabilityReads: migrating 4246main: == 20220722145845 ScheduleBackfillingTheNamespaceIdForVulnerabilityReads: migrated (0.0291s) 4247main: == 20220722150231 CreateFunctionGitlabSchemaPreventWrite: migrating ===========4248main: -- execute("CREATE OR REPLACE FUNCTION gitlab_schema_prevent_write()\n RETURNS TRIGGER AS\n $$\nBEGIN\n RAISE EXCEPTION 'Table: \"%\" is write protected within this Gitlab database.', TG_TABLE_NAME\n USING ERRCODE = 'modifying_sql_data_not_permitted',\n HINT = 'Make sure you are using the right database connection';\nEND\n$$ LANGUAGE PLPGSQL\n")4249main: -> 0.0008s4250main: == 20220722150231 CreateFunctionGitlabSchemaPreventWrite: migrated (0.0010s) ==4251main: == 20220722203840 UpdateLockWritesFunctionDisabledViaSetting: migrating =======4252main: -- execute("CREATE OR REPLACE FUNCTION gitlab_schema_prevent_write()\n RETURNS TRIGGER AS\n $$\nBEGIN\n IF COALESCE(NULLIF(current_setting(CONCAT('lock_writes.', TG_TABLE_NAME), true), ''), 'true') THEN\n RAISE EXCEPTION 'Table: \"%\" is write protected within this Gitlab database.', TG_TABLE_NAME\n USING ERRCODE = 'modifying_sql_data_not_permitted',\n HINT = 'Make sure you are using the right database connection';\n END IF;\n RETURN NEW;\nEND\n$$ LANGUAGE PLPGSQL;\n")4253main: -> 0.0014s4254main: == 20220722203840 UpdateLockWritesFunctionDisabledViaSetting: migrated (0.0016s) 4255main: == 20220723120039 AddAuthorIdToVulnerabilityStateTransitions: migrating =======4256main: -- add_column(:vulnerability_state_transitions, :author_id, :bigint)4257main: -> 0.0013s4258main: == 20220723120039 AddAuthorIdToVulnerabilityStateTransitions: migrated (0.0015s) 4259main: == 20220725150127 UpdateJiraTrackerDataDeploymentTypeBasedOnUrl: migrating ====4260main: -- Scheduling UpdateJiraTrackerDataDeploymentTypeBasedOnUrl jobs4261main: == 20220725150127 UpdateJiraTrackerDataDeploymentTypeBasedOnUrl: migrated (0.0372s) 4262main: == 20220726025516 AddNamespaceSettingsUniqueProjectDownloadLimitAllowlistSizeConstraint: migrating 4263main: -- transaction_open?()4264main: -> 0.0000s4265main: -- current_schema()4266main: -> 0.0005s4267main: -- transaction_open?()4268main: -> 0.0000s4269main: -- execute("ALTER TABLE namespace_settings\nADD CONSTRAINT namespace_settings_unique_project_download_limit_allowlist_size\nCHECK ( CARDINALITY(unique_project_download_limit_allowlist) <= 100 )\nNOT VALID;\n")4270main: -> 0.0011s4271main: -- current_schema()4272main: -> 0.0005s4273main: -- execute("ALTER TABLE namespace_settings VALIDATE CONSTRAINT namespace_settings_unique_project_download_limit_allowlist_size;")4274main: -> 0.0007s4275main: == 20220726025516 AddNamespaceSettingsUniqueProjectDownloadLimitAllowlistSizeConstraint: migrated (0.0094s) 4276main: == 20220726154012 EnsureSbomOccurrencesIsEmpty: migrating =====================4277main: -- execute("DELETE FROM sbom_occurrences")4278main: -> 0.0008s4279main: == 20220726154012 EnsureSbomOccurrencesIsEmpty: migrated (0.0011s) ============4280main: == 20220726154013 AddComponentIdToSbomOccurrences: migrating ==================4281main: -- add_column(:sbom_occurrences, :component_id, :bigint, {:null=>false})4282main: -> 0.0009s4283main: == 20220726154013 AddComponentIdToSbomOccurrences: migrated (0.0012s) =========4284main: == 20220726154014 AddIndexToSbomOccurrencesComponentId: migrating =============4285main: -- transaction_open?()4286main: -> 0.0000s4287main: -- view_exists?(:postgres_partitions)4288main: -> 0.0012s4289main: -- index_exists?(:sbom_occurrences, :component_id, {:name=>"index_sbom_occurrences_on_component_id", :algorithm=>:concurrently})4290main: -> 0.0044s4291main: -- add_index(:sbom_occurrences, :component_id, {:name=>"index_sbom_occurrences_on_component_id", :algorithm=>:concurrently})4292main: -> 0.0014s4293main: == 20220726154014 AddIndexToSbomOccurrencesComponentId: migrated (0.0147s) ====4294main: == 20220726154015 AddComponentForeignKeyToSbomOccurrences: migrating ==========4295main: -- transaction_open?()4296main: -> 0.0000s4297main: -- foreign_keys(:sbom_occurrences)4298main: -> 0.0032s4299main: -- transaction_open?()4300main: -> 0.0000s4301main: -- execute("ALTER TABLE sbom_occurrences\nADD CONSTRAINT fk_d857c6edc1\nFOREIGN KEY (component_id)\nREFERENCES sbom_components (id)\nON DELETE CASCADE\nNOT VALID;\n")4302main: -> 0.0011s4303main: -- execute("ALTER TABLE sbom_occurrences VALIDATE CONSTRAINT fk_d857c6edc1;")4304main: -> 0.0011s4305main: == 20220726154015 AddComponentForeignKeyToSbomOccurrences: migrated (0.0092s) =4306main: == 20220726154016 MakeComponentVersionNullable: migrating =====================4307main: -- change_column_null(:sbom_occurrences, :component_version_id, true)4308main: -> 0.0008s4309main: == 20220726154016 MakeComponentVersionNullable: migrated (0.0010s) ============4310main: == 20220726171440 CreateGhostUserMigrations: migrating ========================4311main: -- create_table(:ghost_user_migrations, {})4312main: -> 0.0043s4313main: == 20220726171440 CreateGhostUserMigrations: migrated (0.0046s) ===============4314main: == 20220726171450 AddUserFkToGhostUserMigrations: migrating ===================4315main: -- transaction_open?()4316main: -> 0.0000s4317main: -- foreign_keys(:ghost_user_migrations)4318main: -> 0.0032s4319main: -- transaction_open?()4320main: -> 0.0000s4321main: -- execute("ALTER TABLE ghost_user_migrations\nADD CONSTRAINT fk_202e642a2f\nFOREIGN KEY (user_id)\nREFERENCES users (id)\nON DELETE CASCADE\nNOT VALID;\n")4322main: -> 0.0014s4323main: -- execute("ALTER TABLE ghost_user_migrations VALIDATE CONSTRAINT fk_202e642a2f;")4324main: -> 0.0014s4325main: == 20220726171450 AddUserFkToGhostUserMigrations: migrated (0.0096s) ==========4326main: == 20220726182310 AddUserFkToVulnerabilityStateTransitions: migrating =========4327main: -- transaction_open?()4328main: -> 0.0000s4329main: -- view_exists?(:postgres_partitions)4330main: -> 0.0012s4331main: -- index_exists?(:vulnerability_state_transitions, :author_id, {:name=>"index_vulnerability_state_transitions_on_author_id", :algorithm=>:concurrently})4332main: -> 0.0027s4333main: -- add_index(:vulnerability_state_transitions, :author_id, {:name=>"index_vulnerability_state_transitions_on_author_id", :algorithm=>:concurrently})4334main: -> 0.0014s4335main: -- transaction_open?()4336main: -> 0.0000s4337main: -- foreign_keys(:vulnerability_state_transitions)4338main: -> 0.0030s4339main: -- transaction_open?()4340main: -> 0.0000s4341main: -- execute("ALTER TABLE vulnerability_state_transitions\nADD CONSTRAINT fk_e719dc63df\nFOREIGN KEY (author_id)\nREFERENCES users (id)\nON DELETE SET NULL\nNOT VALID;\n")4342main: -> 0.0014s4343main: -- execute("ALTER TABLE vulnerability_state_transitions VALIDATE CONSTRAINT fk_e719dc63df;")4344main: -> 0.0014s4345main: == 20220726182310 AddUserFkToVulnerabilityStateTransitions: migrated (0.0220s) 4346main: == 20220726225114 RemoveTmpIndexGroupMembershipNamespaceIdColumn: migrating ===4347main: -- transaction_open?()4348main: -> 0.0000s4349main: -- view_exists?(:postgres_partitions)4350main: -> 0.0011s4351main: -- indexes(:members)4352main: -> 0.0120s4353main: -- remove_index(:members, {:algorithm=>:concurrently, :name=>"tmp_index_for_namespace_id_migration_on_group_members"})4354main: -> 0.0012s4355main: == 20220726225114 RemoveTmpIndexGroupMembershipNamespaceIdColumn: migrated (0.0217s) 4356main: == 20220726230052 RemoveTmpIndexProjectMembershipNamespaceIdColumn: migrating =4357main: -- transaction_open?()4358main: -> 0.0000s4359main: -- view_exists?(:postgres_partitions)4360main: -> 0.0010s4361main: -- indexes(:members)4362main: -> 0.0115s4363main: -- remove_index(:members, {:algorithm=>:concurrently, :name=>"tmp_index_for_namespace_id_migration_on_project_members"})4364main: -> 0.0012s4365main: == 20220726230052 RemoveTmpIndexProjectMembershipNamespaceIdColumn: migrated (0.0200s) 4366main: == 20220728114136 MakeSshSignatureKeyNullable: migrating ======================4367main: -- change_column_null(:ssh_signatures, :key_id, true)4368main: -> 0.0007s4369main: == 20220728114136 MakeSshSignatureKeyNullable: migrated (0.0010s) =============4370main: == 20220728134255 UpdateIndexVulnerabilitiesCommonFinder: migrating ===========4371main: -- transaction_open?()4372main: -> 0.0000s4373main: -- view_exists?(:postgres_partitions)4374main: -> 0.0010s4375main: -- index_exists?(:vulnerabilities, [:project_id, :state, :report_type, :present_on_default_branch, :severity, :id], {:name=>"index_vulnerabilities_common_finder_query_on_default_branch", :algorithm=>:concurrently})4376main: -> 0.0116s4377main: -- add_index(:vulnerabilities, [:project_id, :state, :report_type, :present_on_default_branch, :severity, :id], {:name=>"index_vulnerabilities_common_finder_query_on_default_branch", :algorithm=>:concurrently})4378main: -> 0.0016s4379main: -- transaction_open?()4380main: -> 0.0000s4381main: -- view_exists?(:postgres_partitions)4382main: -> 0.0009s4383main: -- indexes(:vulnerabilities)4384main: -> 0.0123s4385main: -- remove_index(:vulnerabilities, {:algorithm=>:concurrently, :name=>"index_vulnerabilites_common_finder_query"})4386main: -> 0.0012s4387main: == 20220728134255 UpdateIndexVulnerabilitiesCommonFinder: migrated (0.0410s) ==4388main: == 20220729033851 AddPartialLegacyOpenSourceLicenseAvailableIndex: migrating ==4389main: -- transaction_open?()4390main: -> 0.0000s4391main: -- view_exists?(:postgres_partitions)4392main: -> 0.0010s4393main: -- index_exists?(:project_settings, [:legacy_open_source_license_available], {:where=>"legacy_open_source_license_available = TRUE", :name=>"index_project_settings_on_legacy_open_source_license_available", :algorithm=>:concurrently})4394main: -> 0.0029s4395main: -- add_index(:project_settings, [:legacy_open_source_license_available], {:where=>"legacy_open_source_license_available = TRUE", :name=>"index_project_settings_on_legacy_open_source_license_available", :algorithm=>:concurrently})4396main: -> 0.0014s4397main: == 20220729033851 AddPartialLegacyOpenSourceLicenseAvailableIndex: migrated (0.0118s) 4398main: == 20220729052031 AddIndexOnVulnerabilityReadsNamespaceIdWithReportType: migrating 4399main: -- transaction_open?()4400main: -> 0.0000s4401main: -- view_exists?(:postgres_partitions)4402main: -> 0.0011s4403main: -- index_exists?(:vulnerability_reads, [:namespace_id, :state, :report_type, :severity, :vulnerability_id], {:name=>"index_vulnerability_reads_common_finder_query_with_namespace_id", :order=>{:vulnerability_id=>:desc}, :algorithm=>:concurrently})4404main: -> 0.0087s4405main: -- add_index(:vulnerability_reads, [:namespace_id, :state, :report_type, :severity, :vulnerability_id], {:name=>"index_vulnerability_reads_common_finder_query_with_namespace_id", :order=>{:vulnerability_id=>:desc}, :algorithm=>:concurrently})4406main: -> 0.0013s4407main: == 20220729052031 AddIndexOnVulnerabilityReadsNamespaceIdWithReportType: migrated (0.0181s) 4408main: == 20220729073603 IndexPersonalAccessTokensOnIdAndCreatedAt: migrating ========4409main: -- transaction_open?()4410main: -> 0.0000s4411main: -- view_exists?(:postgres_partitions)4412main: -> 0.0009s4413main: -- index_exists?(:personal_access_tokens, [:id, :created_at], {:name=>"index_personal_access_tokens_on_id_and_created_at", :algorithm=>:concurrently})4414main: -> 0.0041s4415main: -- add_index(:personal_access_tokens, [:id, :created_at], {:name=>"index_personal_access_tokens_on_id_and_created_at", :algorithm=>:concurrently})4416main: -> 0.0013s4417main: == 20220729073603 IndexPersonalAccessTokensOnIdAndCreatedAt: migrated (0.0130s) 4418main: == 20220801144713 AddPartialTrigramIndexForIssueTitle: migrating ==============4419main: -- transaction_open?()4420main: -> 0.0000s4421main: -- view_exists?(:postgres_partitions)4422main: -> 0.0009s4423main: -- index_exists?(:issues, :title, {:name=>"index_issues_on_title_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u218F]*'", :algorithm=>:concurrently})4424main: -> 0.0220s4425main: -- add_index(:issues, :title, {:name=>"index_issues_on_title_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u218F]*'", :algorithm=>:concurrently})4426main: -> 0.0019s4427main: == 20220801144713 AddPartialTrigramIndexForIssueTitle: migrated (0.0341s) =====4428main: == 20220801150028 AddPartialTrigramIndexForIssueDescription: migrating ========4429main: -- transaction_open?()4430main: -> 0.0000s4431main: -- view_exists?(:postgres_partitions)4432main: -> 0.0009s4433main: -- index_exists?(:issues, :description, {:name=>"index_issues_on_description_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u218F]*'", :algorithm=>:concurrently})4434main: -> 0.0222s4435main: -- add_index(:issues, :description, {:name=>"index_issues_on_description_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u218F]*'", :algorithm=>:concurrently})4436main: -> 0.0018s4437main: == 20220801150028 AddPartialTrigramIndexForIssueDescription: migrated (0.0337s) 4438main: == 20220801155858 ScheduleDisableLegacyOpenSourceLicenceForRecentPublicProjects: migrating 4439main: == 20220801155858 ScheduleDisableLegacyOpenSourceLicenceForRecentPublicProjects: migrated (0.0002s) 4440main: == 20220802112102 ScheduleMigrateSharedVulnerabilityScanners: migrating =======4441main: == 20220802112102 ScheduleMigrateSharedVulnerabilityScanners: migrated (0.0001s) 4442main: == 20220802114351 RescheduleBackfillContainerRegistrySizeIntoProjectStatistics: migrating 4443main: == 20220802114351 RescheduleBackfillContainerRegistrySizeIntoProjectStatistics: migrated (0.0294s) 4444main: == 20220802132158 IndexOnIntegrationTypeNewIdWhenActiveAndHasGroup: migrating =4445main: -- transaction_open?()4446main: -> 0.0000s4447main: -- view_exists?(:postgres_partitions)4448main: -> 0.0010s4449main: -- index_exists?(:integrations, [:type_new, :id, :inherit_from_id], {:name=>"index_integrations_on_type_new_id_when_active_and_has_group", :where=>"((active = true) AND (group_id IS NOT NULL))", :algorithm=>:concurrently})4450main: -> 0.0060s4451main: -- add_index(:integrations, [:type_new, :id, :inherit_from_id], {:name=>"index_integrations_on_type_new_id_when_active_and_has_group", :where=>"((active = true) AND (group_id IS NOT NULL))", :algorithm=>:concurrently})4452main: -> 0.0016s4453main: == 20220802132158 IndexOnIntegrationTypeNewIdWhenActiveAndHasGroup: migrated (0.0151s) 4454main: == 20220802154757 AddDeactivateDormantUserTimeSetting: migrating ==============4455main: -- add_column(:application_settings, :deactivate_dormant_users_period, :integer, {:default=>90, :null=>false})4456main: -> 0.0025s4457main: == 20220802154757 AddDeactivateDormantUserTimeSetting: migrated (0.0027s) =====4458main: == 20220802200719 AddUserDetailsProfileFields: migrating ======================4459main: -- add_column(:user_details, :linkedin, :text, {:null=>false, :default=>""})4460main: -> 0.0013s4461main: -- add_column(:user_details, :twitter, :text, {:null=>false, :default=>""})4462main: -> 0.0012s4463main: -- add_column(:user_details, :skype, :text, {:null=>false, :default=>""})4464main: -> 0.0012s4465main: -- add_column(:user_details, :website_url, :text, {:null=>false, :default=>""})4466main: -> 0.0012s4467main: -- add_column(:user_details, :location, :text, {:null=>false, :default=>""})4468main: -> 0.0011s4469main: -- add_column(:user_details, :organization, :text, {:null=>false, :default=>""})4470main: -> 0.0012s4471main: == 20220802200719 AddUserDetailsProfileFields: migrated (0.0076s) =============4472main: == 20220802202505 AddUserDetailsFieldLimits: migrating ========================4473main: -- transaction_open?()4474main: -> 0.0000s4475main: -- current_schema()4476main: -> 0.0007s4477main: -- transaction_open?()4478main: -> 0.0000s4479main: -- execute("ALTER TABLE user_details\nADD CONSTRAINT check_7d6489f8f3\nCHECK ( char_length(linkedin) <= 500 )\nNOT VALID;\n")4480main: -> 0.0009s4481main: -- current_schema()4482main: -> 0.0004s4483main: -- execute("ALTER TABLE user_details VALIDATE CONSTRAINT check_7d6489f8f3;")4484main: -> 0.0008s4485main: -- transaction_open?()4486main: -> 0.0000s4487main: -- current_schema()4488main: -> 0.0005s4489main: -- transaction_open?()4490main: -> 0.0000s4491main: -- execute("ALTER TABLE user_details\nADD CONSTRAINT check_466a25be35\nCHECK ( char_length(twitter) <= 500 )\nNOT VALID;\n")4492main: -> 0.0008s4493main: -- current_schema()4494main: -> 0.0004s4495main: -- execute("ALTER TABLE user_details VALIDATE CONSTRAINT check_466a25be35;")4496main: -> 0.0008s4497main: -- transaction_open?()4498main: -> 0.0000s4499main: -- current_schema()4500main: -> 0.0004s4501main: -- transaction_open?()4502main: -> 0.0000s4503main: -- execute("ALTER TABLE user_details\nADD CONSTRAINT check_444573ee52\nCHECK ( char_length(skype) <= 500 )\nNOT VALID;\n")4504main: -> 0.0010s4505main: -- current_schema()4506main: -> 0.0004s4507main: -- execute("ALTER TABLE user_details VALIDATE CONSTRAINT check_444573ee52;")4508main: -> 0.0007s4509main: -- transaction_open?()4510main: -> 0.0000s4511main: -- current_schema()4512main: -> 0.0004s4513main: -- transaction_open?()4514main: -> 0.0000s4515main: -- execute("ALTER TABLE user_details\nADD CONSTRAINT check_7fe2044093\nCHECK ( char_length(website_url) <= 500 )\nNOT VALID;\n")4516main: -> 0.0008s4517main: -- current_schema()4518main: -> 0.0004s4519main: -- execute("ALTER TABLE user_details VALIDATE CONSTRAINT check_7fe2044093;")4520main: -> 0.0007s4521main: -- transaction_open?()4522main: -> 0.0000s4523main: -- current_schema()4524main: -> 0.0005s4525main: -- transaction_open?()4526main: -> 0.0000s4527main: -- execute("ALTER TABLE user_details\nADD CONSTRAINT check_8a7fcf8a60\nCHECK ( char_length(location) <= 500 )\nNOT VALID;\n")4528main: -> 0.0008s4529main: -- current_schema()4530main: -> 0.0004s4531main: -- execute("ALTER TABLE user_details VALIDATE CONSTRAINT check_8a7fcf8a60;")4532main: -> 0.0008s4533main: -- transaction_open?()4534main: -> 0.0000s4535main: -- current_schema()4536main: -> 0.0004s4537main: -- transaction_open?()4538main: -> 0.0000s4539main: -- execute("ALTER TABLE user_details\nADD CONSTRAINT check_7b246dad73\nCHECK ( char_length(organization) <= 500 )\nNOT VALID;\n")4540main: -> 0.0007s4541main: -- current_schema()4542main: -> 0.0004s4543main: -- execute("ALTER TABLE user_details VALIDATE CONSTRAINT check_7b246dad73;")4544main: -> 0.0007s4545main: == 20220802202505 AddUserDetailsFieldLimits: migrated (0.0486s) ===============4546main: == 20220802204737 RemoveDeactivatedUserHighestRoleStats: migrating ============4547main: == 20220802204737 RemoveDeactivatedUserHighestRoleStats: migrated (0.0039s) ===4548main: == 20220803004853 AddAutoBanUserToNamespaceSettings: migrating ================4549main: -- add_column(:namespace_settings, :auto_ban_user_on_excessive_projects_download, :boolean, {:default=>false, :null=>false})4550main: -> 0.0015s4551main: == 20220803004853 AddAutoBanUserToNamespaceSettings: migrated (0.0017s) =======4552main: == 20220803042351 AddTmpIndexTodosAttentionRequestAction: migrating ===========4553main: -- transaction_open?()4554main: -> 0.0000s4555main: -- view_exists?(:postgres_partitions)4556main: -> 0.0011s4557main: -- index_exists?(:todos, [:id], {:where=>"action = 10", :name=>"tmp_index_todos_attention_request_action", :algorithm=>:concurrently})4558main: -> 0.0094s4559main: -- add_index(:todos, [:id], {:where=>"action = 10", :name=>"tmp_index_todos_attention_request_action", :algorithm=>:concurrently})4560main: -> 0.0015s4561main: == 20220803042351 AddTmpIndexTodosAttentionRequestAction: migrated (0.0194s) ==4562main: == 20220803042352 CleanupMrAttentionRequestTodos: migrating ===================4563main: == 20220803042352 CleanupMrAttentionRequestTodos: migrated (0.0178s) ==========4564main: == 20220803145637 CreateUserProjectCallout: migrating =========================4565main: -- create_table(:user_project_callouts, {})4566main: -> 0.0042s4567main: == 20220803145637 CreateUserProjectCallout: migrated (0.0045s) ================4568main: == 20220803154543 AddProjectIdFkeyForUserProjectCallout: migrating ============4569main: -- transaction_open?()4570main: -> 0.0000s4571main: -- foreign_keys(:user_project_callouts)4572main: -> 0.0034s4573main: -- transaction_open?()4574main: -> 0.0000s4575main: -- execute("ALTER TABLE user_project_callouts\nADD CONSTRAINT fk_33b4814f6b\nFOREIGN KEY (project_id)\nREFERENCES projects (id)\nON DELETE CASCADE\nNOT VALID;\n")4576main: -> 0.0018s4577main: -- execute("ALTER TABLE user_project_callouts VALIDATE CONSTRAINT fk_33b4814f6b;")4578main: -> 0.0016s4579main: == 20220803154543 AddProjectIdFkeyForUserProjectCallout: migrated (0.0107s) ===4580main: == 20220803154758 AddUserIdFkeyForUserProjectCallout: migrating ===============4581main: -- transaction_open?()4582main: -> 0.0000s4583main: -- foreign_keys(:user_project_callouts)4584main: -> 0.0034s4585main: -- transaction_open?()4586main: -> 0.0000s4587main: -- execute("ALTER TABLE user_project_callouts\nADD CONSTRAINT fk_f62dd11a33\nFOREIGN KEY (user_id)\nREFERENCES users (id)\nON DELETE CASCADE\nNOT VALID;\n")4588main: -> 0.0013s4589main: -- execute("ALTER TABLE user_project_callouts VALIDATE CONSTRAINT fk_f62dd11a33;")4590main: -> 0.0015s4591main: == 20220803154758 AddUserIdFkeyForUserProjectCallout: migrated (0.0099s) ======4592main: == 20220803235114 AddAutoBanUserToApplicationSettings: migrating ==============4593main: -- add_column(:application_settings, :auto_ban_user_on_excessive_projects_download, :boolean, {:default=>false, :null=>false})4594main: -> 0.0031s4595main: == 20220803235114 AddAutoBanUserToApplicationSettings: migrated (0.0033s) =====4596main: == 20220804235614 AddCommentToVulnerabilityStateTransitions: migrating ========4597main: -- add_column(:vulnerability_state_transitions, :comment, :text)4598main: -> 0.0019s4599main: == 20220804235614 AddCommentToVulnerabilityStateTransitions: migrated (0.0021s) 4600main: == 20220805001210 AddTextLimitToVulnerabilityStateTransitionsComment: migrating 4601main: -- transaction_open?()4602main: -> 0.0000s4603main: -- current_schema()4604main: -> 0.0007s4605main: -- transaction_open?()4606main: -> 0.0000s4607main: -- execute("ALTER TABLE vulnerability_state_transitions\nADD CONSTRAINT check_fca4a7ca39\nCHECK ( char_length(comment) <= 255 )\nNOT VALID;\n")4608main: -> 0.0009s4609main: -- current_schema()4610main: -> 0.0005s4611main: -- execute("ALTER TABLE vulnerability_state_transitions VALIDATE CONSTRAINT check_fca4a7ca39;")4612main: -> 0.0008s4613main: == 20220805001210 AddTextLimitToVulnerabilityStateTransitionsComment: migrated (0.0095s) 4614main: == 20220805154101 AddAllowRunPipelinesInTheParentProjectSetting: migrating ====4615main: -- add_column(:project_ci_cd_settings, :allow_fork_pipelines_to_run_in_parent_project, :boolean, {:default=>true, :null=>false})4616main: -> 0.0020s4617main: == 20220805154101 AddAllowRunPipelinesInTheParentProjectSetting: migrated (0.0022s) 4618main: == 20220805180311 AddUniqueIndexOnSbomComponentTypeAndName: migrating =========4619main: -- transaction_open?()4620main: -> 0.0000s4621main: -- view_exists?(:postgres_partitions)4622main: -> 0.0014s4623main: -- index_exists?(:sbom_components, [:component_type, :name], {:unique=>true, :name=>"index_sbom_components_on_component_type_and_name", :algorithm=>:concurrently})4624main: -> 0.0019s4625main: -- add_index(:sbom_components, [:component_type, :name], {:unique=>true, :name=>"index_sbom_components_on_component_type_and_name", :algorithm=>:concurrently})4626main: -> 0.0016s4627main: == 20220805180311 AddUniqueIndexOnSbomComponentTypeAndName: migrated (0.0127s) 4628main: == 20220805183952 AddUniqueIndexToSbomComponentVersionsOnComponentIdAndVersion: migrating 4629main: -- transaction_open?()4630main: -> 0.0000s4631main: -- view_exists?(:postgres_partitions)4632main: -> 0.0011s4633main: -- index_exists?(:sbom_component_versions, [:component_id, :version], {:unique=>true, :name=>"index_sbom_component_versions_on_component_id_and_version", :algorithm=>:concurrently})4634main: -> 0.0028s4635main: -- add_index(:sbom_component_versions, [:component_id, :version], {:unique=>true, :name=>"index_sbom_component_versions_on_component_id_and_version", :algorithm=>:concurrently})4636main: -> 0.0016s4637main: == 20220805183952 AddUniqueIndexToSbomComponentVersionsOnComponentIdAndVersion: migrated (0.0132s) 4638main: == 20220805193117 AddUniqueIndexToSbomSourcesOnSourceTypeAndSource: migrating =4639main: -- transaction_open?()4640main: -> 0.0000s4641main: -- view_exists?(:postgres_partitions)4642main: -> 0.0062s4643main: -- index_exists?(:sbom_sources, [:source_type, :source], {:unique=>true, :name=>"index_sbom_sources_on_source_type_and_source", :algorithm=>:concurrently})4644main: -> 0.0026s4645main: -- add_index(:sbom_sources, [:source_type, :source], {:unique=>true, :name=>"index_sbom_sources_on_source_type_and_source", :algorithm=>:concurrently})4646main: -> 0.0018s4647main: == 20220805193117 AddUniqueIndexToSbomSourcesOnSourceTypeAndSource: migrated (0.0214s) 4648main: == 20220808072054 PrepareIndexRemovalSecurityFindings: migrating ==============4649main: -- index_exists?(:security_findings, [:uuid, :id], {:name=>:index_on_security_findings_uuid_and_id_order_desc})4650main: -> 0.0081s4651main: -- quote_column_name(:index_on_security_findings_uuid_and_id_order_desc)4652main: -> 0.0000s4653main: == 20220808072054 PrepareIndexRemovalSecurityFindings: migrated (0.0128s) =====4654main: == 20220808131659 RemoveCiNamespaceMonthlyUsagesAdditionalAmountAvailableColumn: migrating 4655main: -- remove_column(:ci_namespace_monthly_usages, :additional_amount_available)4656main: -> 0.0017s4657main: == 20220808131659 RemoveCiNamespaceMonthlyUsagesAdditionalAmountAvailableColumn: migrated (0.0019s) 4658main: == 20220808133824 AddTimestampsToProjectStatistics: migrating =================4659main: -- add_column(:project_statistics, :created_at, :datetime_with_timezone, {:default=>#<Proc:0x00007f57504d0e00 /builds/gitlab-org/gitlab/db/migrate/20220808133824_add_timestamps_to_project_statistics.rb:5 (lambda)>, :null=>false})4660main: -> 0.0018s4661main: -- add_column(:project_statistics, :updated_at, :datetime_with_timezone, {:default=>#<Proc:0x00007f57504d0e00 /builds/gitlab-org/gitlab/db/migrate/20220808133824_add_timestamps_to_project_statistics.rb:5 (lambda)>, :null=>false})4662main: -> 0.0010s4663main: == 20220808133824 AddTimestampsToProjectStatistics: migrated (0.0032s) ========4664main: == 20220808190124 AddIdTokenToCiBuildsMetadata: migrating =====================4665main: -- add_column(:ci_builds_metadata, :id_tokens, :jsonb, {:null=>false, :default=>{}})4666main: -> 0.0024s4667main: == 20220808190124 AddIdTokenToCiBuildsMetadata: migrated (0.0026s) ============4668main: == 20220808194857 RemoveDescriptionHtmlLimit: migrating =======================4669main: -- transaction_open?()4670main: -> 0.0000s4671main: -- transaction_open?()4672main: -> 0.0000s4673main: -- execute(" ALTER TABLE namespace_details\n DROP CONSTRAINT IF EXISTS check_2df620eaf6\n")4674main: -> 0.0008s4675main: -- transaction_open?()4676main: -> 0.0000s4677main: -- transaction_open?()4678main: -> 0.0000s4679main: -- execute(" ALTER TABLE namespace_details\n DROP CONSTRAINT IF EXISTS check_2f563eec0f\n")4680main: -> 0.0008s4681main: == 20220808194857 RemoveDescriptionHtmlLimit: migrated (0.0072s) ==============4682main: == 20220809002011 ScheduleDestroyInvalidGroupMembers: migrating ===============4683main: == 20220809002011 ScheduleDestroyInvalidGroupMembers: migrated (0.0001s) ======4684main: == 20220809214730 AddNoteMetadataTempIndexOnIdWhereTask: migrating ============4685main: -- transaction_open?()4686main: -> 0.0000s4687main: -- view_exists?(:postgres_partitions)4688main: -> 0.0012s4689main: -- index_exists?(:system_note_metadata, [:id, :action], {:where=>"action = 'task'", :name=>"tmp_index_system_note_metadata_on_id_where_task", :algorithm=>:concurrently})4690main: -> 0.0033s4691main: -- add_index(:system_note_metadata, [:id, :action], {:where=>"action = 'task'", :name=>"tmp_index_system_note_metadata_on_id_where_task", :algorithm=>:concurrently})4692main: -> 0.0016s4693main: == 20220809214730 AddNoteMetadataTempIndexOnIdWhereTask: migrated (0.0139s) ===4694main: == 20220809223215 ChangeTaskSystemNoteWordingToChecklistItem: migrating =======4695main: == 20220809223215 ChangeTaskSystemNoteWordingToChecklistItem: migrated (0.0299s) 4696main: == 20220810093742 AddAsyncTmpIndexJobArtifactsIdAndExpireAt: migrating ========4697main: -- index_exists?(:ci_job_artifacts, :id, {:where=>"(EXTRACT(day FROM timezone('UTC', expire_at)) IN (21, 22, 23)\nAND EXTRACT(minute FROM timezone('UTC', expire_at)) IN (0, 30, 45)\nAND EXTRACT(second FROM timezone('UTC', expire_at)) = 0)\nOR file_type = 3\n", :name=>"tmp_index_ci_job_artifacts_on_id_expire_at_file_type_trace", :algorithm=>:concurrently})4698main: -> 0.0112s4699main: == 20220810093742 AddAsyncTmpIndexJobArtifactsIdAndExpireAt: migrated (0.0131s) 4700main: == 20220811092243 CreateMlExperiments: migrating ==============================4701main: -- create_table(:ml_experiments, {})4702main: -- quote_column_name(:name)4703main: -> 0.0000s4704main: -> 0.0059s4705main: == 20220811092243 CreateMlExperiments: migrated (0.0061s) =====================4706main: == 20220811092244 CreateMlCandidates: migrating ===============================4707main: -- create_table(:ml_candidates, {})4708main: -> 0.0044s4709main: == 20220811092244 CreateMlCandidates: migrated (0.0046s) ======================4710main: == 20220811092245 CreateMlCandidateParams: migrating ==========================4711main: -- create_table(:ml_candidate_params, {})4712main: -- quote_column_name(:name)4713main: -> 0.0000s4714main: -- quote_column_name(:value)4715main: -> 0.0000s4716main: -> 0.0048s4717main: == 20220811092245 CreateMlCandidateParams: migrated (0.0050s) =================4718main: == 20220811092246 CreateMlCandidateMetrics: migrating =========================4719main: -- create_table(:ml_candidate_metrics, {})4720main: -- quote_column_name(:name)4721main: -> 0.0000s4722main: -> 0.0040s4723main: == 20220811092246 CreateMlCandidateMetrics: migrated (0.0043s) ================4724main: == 20220811092251 AddMlCandidatesReferenceToExperiment: migrating =============4725main: -- transaction_open?()4726main: -> 0.0000s4727main: -- foreign_keys(:ml_candidates)4728main: -> 0.0033s4729main: -- transaction_open?()4730main: -> 0.0000s4731main: -- execute("ALTER TABLE ml_candidates\nADD CONSTRAINT fk_56d6ed4d3d\nFOREIGN KEY (experiment_id)\nREFERENCES ml_experiments (id)\nON DELETE CASCADE\nNOT VALID;\n")4732main: -> 0.0010s4733main: -- execute("ALTER TABLE ml_candidates VALIDATE CONSTRAINT fk_56d6ed4d3d;")4734main: -> 0.0011s4735main: == 20220811092251 AddMlCandidatesReferenceToExperiment: migrated (0.0090s) ====4736main: == 20220811092253 AddMlExperimentsReferenceToProject: migrating ===============4737main: -- transaction_open?()4738main: -> 0.0000s4739main: -- foreign_keys(:ml_experiments)4740main: -> 0.0033s4741main: -- transaction_open?()4742main: -> 0.0000s4743main: -- execute("ALTER TABLE ml_experiments\nADD CONSTRAINT fk_ad89c59858\nFOREIGN KEY (project_id)\nREFERENCES projects (id)\nON DELETE CASCADE\nNOT VALID;\n")4744main: -> 0.0014s4745main: -- execute("ALTER TABLE ml_experiments VALIDATE CONSTRAINT fk_ad89c59858;")4746main: -> 0.0018s4747main: == 20220811092253 AddMlExperimentsReferenceToProject: migrated (0.0102s) ======4748main: == 20220815061621 RenameWebHooksServiceIdToIntegrationId: migrating ===========4749main: -- transaction_open?()4750main: -> 0.0001s4751main: -- columns(:web_hooks)4752main: -> 0.0034s4753main: -- column_exists?(:web_hooks, :id)4754main: -> 0.0030s4755main: -- column_exists?(:web_hooks, :integration_id)4756main: -> 0.0028s4757main: -- columns(:web_hooks)4758main: -> 0.0029s4759main: -- add_column(:web_hooks, :integration_id, :integer, {:limit=>4, :precision=>nil, :scale=>nil})4760main: -> 0.0010s4761main: -- transaction_open?()4762main: -> 0.0000s4763main: -- exec_query("SELECT COUNT(*) AS count FROM \"web_hooks\"")4764main: -> 0.0010s4765main: -- indexes(:web_hooks)4766main: -> 0.0058s4767main: -- transaction_open?()4768main: -> 0.0000s4769main: -- view_exists?(:postgres_partitions)4770main: -> 0.0011s4771main: -- index_exists?(:web_hooks, ["integration_id"], {:unique=>false, :name=>"index_web_hooks_on_integration_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})4772main: -> 0.0056s4773main: -- add_index(:web_hooks, ["integration_id"], {:unique=>false, :name=>"index_web_hooks_on_integration_id", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})4774main: -> 0.0014s4775main: -- foreign_keys(:web_hooks)4776main: -> 0.0032s4777main: -- transaction_open?()4778main: -> 0.0000s4779main: -- foreign_keys("web_hooks")4780main: -> 0.0032s4781main: -- transaction_open?()4782main: -> 0.0000s4783main: -- execute("ALTER TABLE web_hooks\nADD CONSTRAINT fk_db1ea5699b\nFOREIGN KEY (integration_id)\nREFERENCES integrations (id)\nON DELETE CASCADE\nNOT VALID;\n")4784main: -> 0.0013s4785main: -- execute("ALTER TABLE web_hooks VALIDATE CONSTRAINT fk_db1ea5699b;")4786main: -> 0.0012s4787main: -- transaction_open?()4788main: -> 0.0000s4789main: -- column_exists?(:web_hooks, :service_id)4790main: -> 0.0033s4791main: -- column_exists?(:web_hooks, :integration_id)4792main: -> 0.0031s4793main: -- current_schema()4794main: -> 0.0005s4795main: -- transaction_open?()4796main: -> 0.0000s4797main: -- quote_table_name(:web_hooks)4798main: -> 0.0000s4799main: -- quote_column_name(:service_id)4800main: -> 0.0000s4801main: -- quote_column_name(:integration_id)4802main: -> 0.0000s4803main: -- columns(:web_hooks)4804main: -> 0.0030s4805main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_a87bcfdf0f0b()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n IF NEW.\"service_id\" IS NOT DISTINCT FROM NULL AND NEW.\"integration_id\" IS DISTINCT FROM NULL THEN\n NEW.\"service_id\" = NEW.\"integration_id\";\n END IF;\n\n IF NEW.\"integration_id\" IS NOT DISTINCT FROM NULL AND NEW.\"service_id\" IS DISTINCT FROM NULL THEN\n NEW.\"integration_id\" = NEW.\"service_id\";\n END IF;\n\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_a87bcfdf0f0b\nON \"web_hooks\";\n\nCREATE TRIGGER trigger_a87bcfdf0f0b\nBEFORE INSERT ON \"web_hooks\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_a87bcfdf0f0b();\n")4806main: -> 0.0012s4807main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_a645cee67576()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"service_id\" := NEW.\"integration_id\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_a645cee67576\nON \"web_hooks\";\n\nCREATE TRIGGER trigger_a645cee67576\nBEFORE UPDATE OF \"integration_id\" ON \"web_hooks\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_a645cee67576();\n")4808main: -> 0.0011s4809main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_aca5c963d732()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"integration_id\" := NEW.\"service_id\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_aca5c963d732\nON \"web_hooks\";\n\nCREATE TRIGGER trigger_aca5c963d732\nBEFORE UPDATE OF \"service_id\" ON \"web_hooks\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_aca5c963d732();\n")4810main: -> 0.0018s4811main: == 20220815061621 RenameWebHooksServiceIdToIntegrationId: migrated (0.0730s) ==4812main: == 20220815152905 CreateVulnerabilityAdvisories: migrating ====================4813main: -- create_table(:vulnerability_advisories, {:id=>false})4814main: -- quote_column_name(:description)4815main: -> 0.0000s4816main: -- quote_column_name(:title)4817main: -> 0.0000s4818main: -- quote_column_name(:component_name)4819main: -> 0.0000s4820main: -- quote_column_name(:solution)4821main: -> 0.0000s4822main: -- quote_column_name(:not_impacted)4823main: -> 0.0000s4824main: -- quote_column_name(:cvss_v2)4825main: -> 0.0000s4826main: -- quote_column_name(:cvss_v3)4827main: -> 0.0000s4828main: -- quote_column_name(:affected_range)4829main: -> 0.0000s4830main: -> 0.0070s4831main: == 20220815152905 CreateVulnerabilityAdvisories: migrated (0.0072s) ===========4832main: == 20220816075638 DropUuidAndIdIndexFromSecurityFindings: migrating ===========4833main: -- transaction_open?()4834main: -> 0.0000s4835main: -- view_exists?(:postgres_partitions)4836main: -> 0.0013s4837main: -- indexes(:security_findings)4838main: -> 0.0073s4839main: -- remove_index(:security_findings, {:algorithm=>:concurrently, :name=>:index_on_security_findings_uuid_and_id_order_desc})4840main: -> 0.0015s4841main: == 20220816075638 DropUuidAndIdIndexFromSecurityFindings: migrated (0.0193s) ==4842main: == 20220816135816 CreateSbomVulnerableComponentVersions: migrating ============4843main: -- create_table(:sbom_vulnerable_component_versions, {})4844main: -> 0.0041s4845main: == 20220816135816 CreateSbomVulnerableComponentVersions: migrated (0.0044s) ===4846main: == 20220816163444 UpdateStartDateForIterationsCadences: migrating =============4847main: -- transaction_open?()4848main: -> 0.0000s4849main: == 20220816163444 UpdateStartDateForIterationsCadences: migrated (0.0160s) ====4850main: == 20220817122907 ReAddShowDiffPreviewInEmailToProjectSettings: migrating =====4851main: -- add_column(:project_settings, :show_diff_preview_in_email, :boolean, {:default=>true, :null=>false})4852main: -> 0.0014s4853main: == 20220817122907 ReAddShowDiffPreviewInEmailToProjectSettings: migrated (0.0016s) 4854main: == 20220818095225 AddMaxPagesCustomDomainsPerProject: migrating ===============4855main: -- column_exists?(:application_settings, :max_pages_custom_domains_per_project)4856main: -> 0.1599s4857main: -- add_column(:application_settings, :max_pages_custom_domains_per_project, :integer, {:null=>false, :default=>0})4858main: -> 0.0030s4859main: -- transaction_open?()4860main: -> 0.0000s4861main: -- current_schema()4862main: -> 0.0006s4863main: -- transaction_open?()4864main: -> 0.0000s4865main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT app_settings_max_pages_custom_domains_per_project_check\nCHECK ( max_pages_custom_domains_per_project >= 0 )\nNOT VALID;\n")4866main: -> 0.0016s4867main: -- current_schema()4868main: -> 0.0004s4869main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT app_settings_max_pages_custom_domains_per_project_check;")4870main: -> 0.0012s4871main: == 20220818095225 AddMaxPagesCustomDomainsPerProject: migrated (0.1735s) ======4872main: == 20220818125332 AddJitsuTrackingColumnsToApplicationSettings: migrating =====4873main: -- add_column(:application_settings, :jitsu_host, :text)4874main: -> 0.0018s4875main: -- add_column(:application_settings, :jitsu_project_xid, :text)4876main: -> 0.0011s4877main: -- add_column(:application_settings, :clickhouse_connection_string, :text)4878main: -> 0.0011s4879main: -- add_column(:application_settings, :jitsu_administrator_email, :text)4880main: -> 0.0010s4881main: -- add_column(:application_settings, :encrypted_jitsu_administrator_password, :binary)4882main: -> 0.0011s4883main: -- add_column(:application_settings, :encrypted_jitsu_administrator_password_iv, :binary)4884main: -> 0.0010s4885main: == 20220818125332 AddJitsuTrackingColumnsToApplicationSettings: migrated (0.0077s) 4886main: == 20220818125703 AddJitsuTrackingColumnsToApplicationSettingsTextLimits: migrating 4887main: -- transaction_open?()4888main: -> 0.0000s4889main: -- current_schema()4890main: -> 0.0006s4891main: -- transaction_open?()4892main: -> 0.0000s4893main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_dea8792229\nCHECK ( char_length(jitsu_host) <= 255 )\nNOT VALID;\n")4894main: -> 0.0013s4895main: -- current_schema()4896main: -> 0.0004s4897main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_dea8792229;")4898main: -> 0.0012s4899main: -- transaction_open?()4900main: -> 0.0000s4901main: -- current_schema()4902main: -> 0.0004s4903main: -- transaction_open?()4904main: -> 0.0000s4905main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_fc732c181e\nCHECK ( char_length(jitsu_project_xid) <= 255 )\nNOT VALID;\n")4906main: -> 0.0012s4907main: -- current_schema()4908main: -> 0.0004s4909main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_fc732c181e;")4910main: -> 0.0012s4911main: -- transaction_open?()4912main: -> 0.0000s4913main: -- current_schema()4914main: -> 0.0004s4915main: -- transaction_open?()4916main: -> 0.0000s4917main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_d4865d70f3\nCHECK ( char_length(clickhouse_connection_string) <= 1024 )\nNOT VALID;\n")4918main: -> 0.0012s4919main: -- current_schema()4920main: -> 0.0004s4921main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_d4865d70f3;")4922main: -> 0.0012s4923main: -- transaction_open?()4924main: -> 0.0000s4925main: -- current_schema()4926main: -> 0.0005s4927main: -- transaction_open?()4928main: -> 0.0000s4929main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_ec3ca9aa8d\nCHECK ( char_length(jitsu_administrator_email) <= 255 )\nNOT VALID;\n")4930main: -> 0.0012s4931main: -- current_schema()4932main: -> 0.0004s4933main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_ec3ca9aa8d;")4934main: -> 0.0012s4935main: == 20220818125703 AddJitsuTrackingColumnsToApplicationSettingsTextLimits: migrated (0.0373s) 4936main: == 20220818132108 AddDeletedOnToMlExperiments: migrating ======================4937main: -- add_column(:ml_experiments, :deleted_on, :datetime_with_timezone, {:index=>true})4938main: -> 0.0013s4939main: == 20220818132108 AddDeletedOnToMlExperiments: migrated (0.0014s) =============4940main: == 20220818140553 AddUniqueIndexToSbomOccurrencesOnIngestionAttributes: migrating 4941main: -- transaction_open?()4942main: -> 0.0000s4943main: -- view_exists?(:postgres_partitions)4944main: -> 0.0012s4945main: -- index_exists?(:sbom_occurrences, [:project_id, :component_id, :component_version_id, :source_id, :commit_sha], {:unique=>true, :name=>"index_sbom_occurrences_on_ingestion_attributes", :algorithm=>:concurrently})4946main: -> 0.0052s4947main: -- add_index(:sbom_occurrences, [:project_id, :component_id, :component_version_id, :source_id, :commit_sha], {:unique=>true, :name=>"index_sbom_occurrences_on_ingestion_attributes", :algorithm=>:concurrently})4948main: -> 0.0016s4949main: == 20220818140553 AddUniqueIndexToSbomOccurrencesOnIngestionAttributes: migrated (0.0154s) 4950main: == 20220819153725 AddVulnerabilityAdvisoryForeignKeyToSbomVulnerableComponentVersions: migrating 4951main: -- transaction_open?()4952main: -> 0.0000s4953main: -- foreign_keys(:sbom_vulnerable_component_versions)4954main: -> 0.0031s4955main: -- transaction_open?()4956main: -> 0.0000s4957main: -- execute("ALTER TABLE sbom_vulnerable_component_versions\nADD CONSTRAINT fk_d720a1959a\nFOREIGN KEY (vulnerability_advisory_id)\nREFERENCES vulnerability_advisories (id)\nON DELETE CASCADE\nNOT VALID;\n")4958main: -> 0.0011s4959main: -- execute("ALTER TABLE sbom_vulnerable_component_versions VALIDATE CONSTRAINT fk_d720a1959a;")4960main: -> 0.0012s4961main: == 20220819153725 AddVulnerabilityAdvisoryForeignKeyToSbomVulnerableComponentVersions: migrated (0.0089s) 4962main: == 20220819162852 AddSbomComponentVersionForeignKeyToSbomVulnerableComponentVersions: migrating 4963main: -- transaction_open?()4964main: -> 0.0000s4965main: -- foreign_keys(:sbom_vulnerable_component_versions)4966main: -> 0.0032s4967main: -- transaction_open?()4968main: -> 0.0000s4969main: -- execute("ALTER TABLE sbom_vulnerable_component_versions\nADD CONSTRAINT fk_8a2a1197f9\nFOREIGN KEY (sbom_component_version_id)\nREFERENCES sbom_component_versions (id)\nON DELETE CASCADE\nNOT VALID;\n")4970main: -> 0.0011s4971main: -- execute("ALTER TABLE sbom_vulnerable_component_versions VALIDATE CONSTRAINT fk_8a2a1197f9;")4972main: -> 0.0010s4973main: == 20220819162852 AddSbomComponentVersionForeignKeyToSbomVulnerableComponentVersions: migrated (0.0089s) 4974main: == 20220819184945 AddDashboardLimitToApplicationSettings: migrating ===========4975main: -- add_column(:application_settings, :dashboard_limit_enabled, :boolean, {:default=>false, :null=>false})4976main: -> 0.0033s4977main: -- add_column(:application_settings, :dashboard_limit, :integer, {:default=>0, :null=>false})4978main: -> 0.0021s4979main: -- add_column(:application_settings, :dashboard_notification_limit, :integer, {:default=>0, :null=>false})4980main: -> 0.0020s4981main: -- add_column(:application_settings, :dashboard_enforcement_limit, :integer, {:default=>0, :null=>false})4982main: -> 0.0021s4983main: -- add_column(:application_settings, :dashboard_limit_new_namespace_creation_enforcement_date, :date)4984main: -> 0.0012s4985main: == 20220819184945 AddDashboardLimitToApplicationSettings: migrated (0.0112s) ==4986main: == 20220820221036 UpdateTmpNonMigratedIndexOnContainerRepositories: migrating =4987main: -- transaction_open?()4988main: -> 0.0000s4989main: -- view_exists?(:postgres_partitions)4990main: -> 0.0013s4991main: -- index_exists?(:container_repositories, [:project_id, :id], {:name=>"tmp_index_container_repos_on_non_migrated", :where=>"migration_state != 'import_done'", :algorithm=>:concurrently})4992main: -> 0.0100s4993main: -- add_index(:container_repositories, [:project_id, :id], {:name=>"tmp_index_container_repos_on_non_migrated", :where=>"migration_state != 'import_done'", :algorithm=>:concurrently})4994main: -> 0.0015s4995main: -- transaction_open?()4996main: -> 0.0000s4997main: -- view_exists?(:postgres_partitions)4998main: -> 0.0009s4999main: -- indexes(:container_repositories)5000main: -> 0.0105s5001main: -- remove_index(:container_repositories, {:algorithm=>:concurrently, :name=>"tmp_idx_container_repos_on_non_migrated"})5002main: -> 0.0012s5003main: == 20220820221036 UpdateTmpNonMigratedIndexOnContainerRepositories: migrated (0.0392s) 5004main: == 20220822071909 RemoveOtherRoleFromUserDetails: migrating ===================5005main: -- remove_column(:user_details, :other_role, :text)5006main: -> 0.0009s5007main: == 20220822071909 RemoveOtherRoleFromUserDetails: migrated (0.0011s) ==========5008main: == 20220822090656 DropBuildCoverageRegexFromProject: migrating ================5009main: -- remove_column(:projects, :build_coverage_regex)5010main: -> 0.0009s5011main: == 20220822090656 DropBuildCoverageRegexFromProject: migrated (0.0011s) =======5012main: == 20220822094804 AddIssuesAuthorizationIndex: migrating ======================5013main: -- index_exists?(:issues, [:project_id, :confidential, :author_id, :id], {:name=>"idx_open_issues_on_project_and_confidential_and_author_and_id", :where=>"state_id = 1", :algorithm=>:concurrently})5014main: -> 0.0227s5015main: -- add_index_options(:issues, [:project_id, :confidential, :author_id, :id], {:name=>"idx_open_issues_on_project_and_confidential_and_author_and_id", :where=>"state_id = 1", :algorithm=>:concurrently})5016main: -> 0.0001s5017main: == 20220822094804 AddIssuesAuthorizationIndex: migrated (0.0293s) =============5018main: == 20220822102651 AddNamespaceIdToBroadcastMessage: migrating =================5019main: -- add_column(:broadcast_messages, :namespace_id, :bigint)5020main: -> 0.0009s5021main: == 20220822102651 AddNamespaceIdToBroadcastMessage: migrated (0.0010s) ========5022main: == 20220822103638 AddIndexAndForeignKeyToBroadcastMessage: migrating ==========5023main: -- transaction_open?()5024main: -> 0.0000s5025main: -- view_exists?(:postgres_partitions)5026main: -> 0.0010s5027main: -- index_exists?(:broadcast_messages, :namespace_id, {:name=>"index_broadcast_messages_on_namespace_id", :algorithm=>:concurrently})5028main: -> 0.0023s5029main: -- add_index(:broadcast_messages, :namespace_id, {:name=>"index_broadcast_messages_on_namespace_id", :algorithm=>:concurrently})5030main: -> 0.0012s5031main: -- transaction_open?()5032main: -> 0.0000s5033main: -- foreign_keys(:broadcast_messages)5034main: -> 0.0029s5035main: -- transaction_open?()5036main: -> 0.0000s5037main: -- execute("ALTER TABLE broadcast_messages\nADD CONSTRAINT fk_7bf2ec43da\nFOREIGN KEY (namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")5038main: -> 0.0013s5039main: -- execute("ALTER TABLE broadcast_messages VALIDATE CONSTRAINT fk_7bf2ec43da;")5040main: -> 0.0012s5041main: == 20220822103638 AddIndexAndForeignKeyToBroadcastMessage: migrated (0.0196s) =5042main: == 20220823084747 PrepareRemovalPartialTrigramIndexesForIssues: migrating =====5043main: -- index_exists?(:issues, :title, {:name=>"index_issues_on_title_trigram_non_latin"})5044main: -> 0.0234s5045main: -- quote_column_name("index_issues_on_title_trigram_non_latin")5046main: -> 0.0000s5047main: -- index_exists?(:issues, :description, {:name=>"index_issues_on_description_trigram_non_latin"})5048main: -> 0.0230s5049main: -- quote_column_name("index_issues_on_description_trigram_non_latin")5050main: -> 0.0000s5051main: == 20220823084747 PrepareRemovalPartialTrigramIndexesForIssues: migrated (0.0540s) 5052main: == 20220824082427 RemoveTmpIdxVulnerabilityOccurrencesOnIdAndScannerId: migrating 5053main: -- transaction_open?()5054main: -> 0.0000s5055main: -- view_exists?(:postgres_partitions)5056main: -> 0.0011s5057main: -- indexes(:vulnerability_occurrences)5058main: -> 0.0063s5059main: -- remove_index(:vulnerability_occurrences, {:algorithm=>:concurrently, :name=>"tmp_index_vulnerability_occurrences_on_id_and_scanner_id"})5060main: -> 0.0011s5061main: == 20220824082427 RemoveTmpIdxVulnerabilityOccurrencesOnIdAndScannerId: migrated (0.0149s) 5062main: == 20220824114218 AddTmpIndexApprovalMergeRequestRules: migrating =============5063main: -- transaction_open?()5064main: -> 0.0000s5065main: -- view_exists?(:postgres_partitions)5066main: -> 0.0010s5067main: -- index_exists?(:approval_merge_request_rules, [:id, :report_type], {:name=>"tmp_index_approval_merge_request_rules_on_report_type_equal_one", :where=>"report_type = 1", :algorithm=>:concurrently})5068main: -> 0.0055s5069main: -- add_index(:approval_merge_request_rules, [:id, :report_type], {:name=>"tmp_index_approval_merge_request_rules_on_report_type_equal_one", :where=>"report_type = 1", :algorithm=>:concurrently})5070main: -> 0.0014s5071main: == 20220824114218 AddTmpIndexApprovalMergeRequestRules: migrated (0.0151s) ====5072main: == 20220824175648 LimitNamespacesSyncTriggersToTraversalIdsUpdate: migrating ==5073main: -- execute("CREATE TRIGGER trigger_namespaces_traversal_ids_on_update\nAFTER UPDATE ON namespaces\nFOR EACH ROW\nWHEN (OLD.traversal_ids IS DISTINCT FROM NEW.traversal_ids)\n\nEXECUTE FUNCTION insert_namespaces_sync_event()\n")5074main: -> 0.0009s5075main: -- execute("DROP TRIGGER IF EXISTS trigger_namespaces_parent_id_on_update ON namespaces")5076main: -> 0.0007s5077main: -- execute("DROP TRIGGER IF EXISTS trigger_namespaces_parent_id_on_insert ON namespaces")5078main: -> 0.0006s5079main: == 20220824175648 LimitNamespacesSyncTriggersToTraversalIdsUpdate: migrated (0.0026s) 5080main: == 20220824194103 RemoveExistingWorkItemTypeBackfillMigrations: migrating =====5081main: == 20220824194103 RemoveExistingWorkItemTypeBackfillMigrations: migrated (0.0142s) 5082main: == 20220825061250 DropTmpIndexTodosAttentionRequestActionIdx: migrating =======5083main: -- transaction_open?()5084main: -> 0.0000s5085main: -- view_exists?(:postgres_partitions)5086main: -> 0.0010s5087main: -- indexes(:todos)5088main: -> 0.0093s5089main: -- remove_index(:todos, {:algorithm=>:concurrently, :name=>"tmp_index_todos_attention_request_action"})5090main: -> 0.0012s5091main: == 20220825061250 DropTmpIndexTodosAttentionRequestActionIdx: migrated (0.0180s) 5092main: == 20220825105631 AddCubeApiKeyToApplicationSettings: migrating ===============5093main: -- add_column(:application_settings, :cube_api_base_url, :text)5094main: -> 0.0021s5095main: -- add_column(:application_settings, :encrypted_cube_api_key, :binary)5096main: -> 0.0010s5097main: -- add_column(:application_settings, :encrypted_cube_api_key_iv, :binary)5098main: -> 0.0009s5099main: == 20220825105631 AddCubeApiKeyToApplicationSettings: migrated (0.0042s) ======5100main: == 20220825134827 RemoveNotNullConstraintForConfidenceColumns: migrating ======5101main: -- change_column_null(:vulnerabilities, :confidence, true)5102main: -> 0.0008s5103main: -- change_column_null(:vulnerability_occurrences, :confidence, true)5104main: -> 0.0007s5105main: -- change_column_null(:security_findings, :confidence, true)5106main: -> 0.0007s5107main: == 20220825134827 RemoveNotNullConstraintForConfidenceColumns: migrated (0.0025s) 5108main: == 20220825142324 ReplaceIssuesAuthorizationIndex: migrating ==================5109main: -- transaction_open?()5110main: -> 0.0000s5111main: -- view_exists?(:postgres_partitions)5112main: -> 0.0011s5113main: -- index_exists?(:issues, [:project_id, :confidential, :author_id, :id], {:name=>"idx_open_issues_on_project_and_confidential_and_author_and_id", :where=>"state_id = 1", :algorithm=>:concurrently})5114main: -> 0.0232s5115main: -- add_index(:issues, [:project_id, :confidential, :author_id, :id], {:name=>"idx_open_issues_on_project_and_confidential_and_author_and_id", :where=>"state_id = 1", :algorithm=>:concurrently})5116main: -> 0.0019s5117main: -- transaction_open?()5118main: -> 0.0000s5119main: -- view_exists?(:postgres_partitions)5120main: -> 0.0010s5121main: -- indexes(:issues)5122main: -> 0.0247s5123main: -- remove_index(:issues, {:algorithm=>:concurrently, :name=>"idx_open_issues_on_project_id_and_confidential"})5124main: -> 0.0013s5125main: == 20220825142324 ReplaceIssuesAuthorizationIndex: migrated (0.0697s) =========5126main: == 20220826165048 DropTemporaryJobTraceIndex: migrating =======================5127main: -- index_exists?(:ci_job_artifacts, :id, {:name=>"tmp_index_ci_job_artifacts_on_id_where_trace_and_expire_at"})5128main: -> 0.0116s5129main: -- quote_column_name("tmp_index_ci_job_artifacts_on_id_where_trace_and_expire_at")5130main: -> 0.0000s5131main: == 20220826165048 DropTemporaryJobTraceIndex: migrated (0.0155s) ==============5132main: == 20220826175058 FullyRemoveTemporaryJobTraceIndex: migrating ================5133main: -- transaction_open?()5134main: -> 0.0000s5135main: -- view_exists?(:postgres_partitions)5136main: -> 0.0010s5137main: -- indexes(:ci_job_artifacts)5138main: -> 0.0107s5139main: -- remove_index(:ci_job_artifacts, {:algorithm=>:concurrently, :name=>"tmp_index_ci_job_artifacts_on_id_where_trace_and_expire_at"})5140main: -> 0.0011s5141main: == 20220826175058 FullyRemoveTemporaryJobTraceIndex: migrated (0.0216s) =======5142main: == 20220828094411 AddRpmMaxFileSizeToPlanLimits: migrating ====================5143main: -- add_column(:plan_limits, :rpm_max_file_size, :bigint, {:default=>5368709120, :null=>false})5144main: -> 0.0021s5145main: == 20220828094411 AddRpmMaxFileSizeToPlanLimits: migrated (0.0024s) ===========5146main: == 20220828131848 CreatePackagesRpmMetadata: migrating ========================5147main: -- transaction_open?()5148main: -> 0.0000s5149main: -- create_table(:packages_rpm_metadata, {:id=>false})5150main: -- quote_column_name(:release)5151main: -> 0.0000s5152main: -- quote_column_name(:summary)5153main: -> 0.0000s5154main: -- quote_column_name(:description)5155main: -> 0.0000s5156main: -- quote_column_name(:arch)5157main: -> 0.0000s5158main: -- quote_column_name(:license)5159main: -> 0.0000s5160main: -- quote_column_name(:url)5161main: -> 0.0000s5162main: -> 0.0059s5163main: == 20220828131848 CreatePackagesRpmMetadata: migrated (0.0088s) ===============5164main: == 20220829183356 ReplaceIndexOnCreditCardValidations: migrating ==============5165main: -- transaction_open?()5166main: -> 0.0000s5167main: -- view_exists?(:postgres_partitions)5168main: -> 0.0011s5169main: -- index_exists?(:user_credit_card_validations, "lower(holder_name), expiration_date, last_digits, credit_card_validated_at", {:name=>"index_user_credit_card_validations_meta_data_full_match_lower", :algorithm=>:concurrently})5170main: -> 0.0033s5171main: -- add_index(:user_credit_card_validations, "lower(holder_name), expiration_date, last_digits, credit_card_validated_at", {:name=>"index_user_credit_card_validations_meta_data_full_match_lower", :algorithm=>:concurrently})5172main: -> 0.0017s5173main: -- transaction_open?()5174main: -> 0.0000s5175main: -- view_exists?(:postgres_partitions)5176main: -> 0.0009s5177main: -- index_exists?(:user_credit_card_validations, [:holder_name, :expiration_date, :last_digits, :credit_card_validated_at], {:name=>"index_user_credit_card_validations_meta_data_full_match", :algorithm=>:concurrently})5178main: -> 0.0031s5179main: -- remove_index(:user_credit_card_validations, {:name=>"index_user_credit_card_validations_meta_data_full_match", :algorithm=>:concurrently, :column=>[:holder_name, :expiration_date, :last_digits, :credit_card_validated_at]})5180main: -> 0.0040s5181main: == 20220829183356 ReplaceIndexOnCreditCardValidations: migrated (0.0287s) =====5182main: == 20220830051704 AddTemporaryIndexForOrphanedInvitedMembers: migrating =======5183main: -- transaction_open?()5184main: -> 0.0000s5185main: -- view_exists?(:postgres_partitions)5186main: -> 0.0011s5187main: -- index_exists?("members", :id, {:where=>"invite_token IS NULL and invite_accepted_at IS NOT NULL AND user_id IS NULL", :name=>"tmp_idx_orphaned_invited_members", :algorithm=>:concurrently})5188main: -> 0.0107s5189main: -- add_index("members", :id, {:where=>"invite_token IS NULL and invite_accepted_at IS NOT NULL AND user_id IS NULL", :name=>"tmp_idx_orphaned_invited_members", :algorithm=>:concurrently})5190main: -> 0.0015s5191main: == 20220830051704 AddTemporaryIndexForOrphanedInvitedMembers: migrated (0.0207s) 5192main: == 20220830061704 OrphanedInvitedMembersCleanup: migrating ====================5193main: == 20220830061704 OrphanedInvitedMembersCleanup: migrated (0.0026s) ===========5194main: == 20220830071704 RemoveTemporaryIndexForOrphanedInvitedMembers: migrating ====5195main: -- indexes("members")5196main: -> 0.0112s5197main: -- transaction_open?()5198main: -> 0.0000s5199main: -- view_exists?(:postgres_partitions)5200main: -> 0.0010s5201main: -- indexes("members")5202main: -> 0.0109s5203main: -- remove_index("members", {:algorithm=>:concurrently, :name=>"tmp_idx_orphaned_invited_members"})5204main: -> 0.0011s5205main: == 20220830071704 RemoveTemporaryIndexForOrphanedInvitedMembers: migrated (0.0313s) 5206main: == 20220830082928 AddTextLimitToCubeApiBaseUrl: migrating =====================5207main: -- transaction_open?()5208main: -> 0.0000s5209main: -- current_schema()5210main: -> 0.0005s5211main: -- transaction_open?()5212main: -> 0.0000s5213main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_8e7df605a1\nCHECK ( char_length(cube_api_base_url) <= 512 )\nNOT VALID;\n")5214main: -> 0.0017s5215main: -- current_schema()5216main: -> 0.0005s5217main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_8e7df605a1;")5218main: -> 0.0014s5219main: == 20220830082928 AddTextLimitToCubeApiBaseUrl: migrated (0.0100s) ============5220main: == 20220830114228 CreateDoraConfigurationTable: migrating =====================5221main: -- create_table(:dora_configurations, {})5222main: -> 0.0045s5223main: == 20220830114228 CreateDoraConfigurationTable: migrated (0.0047s) ============5224main: == 20220830172142 RescheduleIssueWorkItemTypeIdBackfill: migrating ============5225main: == 20220830172142 RescheduleIssueWorkItemTypeIdBackfill: migrated (0.1364s) ===5226main: == 20220831021358 AddIndexOnIssueHealthStatus: migrating ======================5227main: -- transaction_open?()5228main: -> 0.0000s5229main: -- view_exists?(:postgres_partitions)5230main: -> 0.0012s5231main: -- index_exists?(:issues, [:project_id, :health_status, :created_at, :id], {:name=>"index_issues_on_project_id_health_status_created_at_id", :algorithm=>:concurrently})5232main: -> 0.0250s5233main: -- add_index(:issues, [:project_id, :health_status, :created_at, :id], {:name=>"index_issues_on_project_id_health_status_created_at_id", :algorithm=>:concurrently})5234main: -> 0.0017s5235main: == 20220831021358 AddIndexOnIssueHealthStatus: migrated (0.0360s) =============5236main: == 20220831090454 CleanupWebHooksServiceId: migrating =========================5237main: -- column_exists?(:web_hooks, :service_id)5238main: -> 0.0033s5239main: -- transaction_open?()5240main: -> 0.0000s5241main: -- quote_table_name(:web_hooks)5242main: -> 0.0000s5243main: -- execute("DROP TRIGGER IF EXISTS trigger_a87bcfdf0f0b\nON \"web_hooks\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_a87bcfdf0f0b;\n")5244main: -> 0.0008s5245main: -- execute("DROP TRIGGER IF EXISTS trigger_a645cee67576\nON \"web_hooks\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_a645cee67576;\n")5246main: -> 0.0007s5247main: -- execute("DROP TRIGGER IF EXISTS trigger_aca5c963d732\nON \"web_hooks\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_aca5c963d732;\n")5248main: -> 0.0007s5249main: -- remove_column(:web_hooks, :service_id)5250main: -> 0.0011s5251main: == 20220831090454 CleanupWebHooksServiceId: migrated (0.0105s) ================5252main: == 20220831132802 DeleteApprovalRulesForVulnerability: migrating ==============5253main: == 20220831132802 DeleteApprovalRulesForVulnerability: migrated (0.0562s) =====5254main: == 20220831182105 AddConstraintsView: migrating ===============================5255main: -- execute("CREATE OR REPLACE VIEW postgres_constraints\nAS\nSELECT\n pg_constraint.oid AS oid,\n pg_constraint.conname AS name,\n pg_constraint.contype AS constraint_type,\n pg_constraint.convalidated AS constraint_valid,\n (SELECT array_agg(attname ORDER BY ordering)\n FROM unnest(pg_constraint.conkey) WITH ORDINALITY attnums(attnum, ordering)\n INNER JOIN pg_attribute ON pg_attribute.attnum = attnums.attnum AND pg_attribute.attrelid = pg_class.oid\n ) AS column_names,\n pg_namespace.nspname::text || '.'::text || pg_class.relname::text AS table_identifier,\n -- pg_constraint reports a 0 oid rather than null if the constraint is not a partition child constraint.\n nullif(pg_constraint.conparentid, 0) AS parent_constraint_oid,\n pg_get_constraintdef(pg_constraint.oid) AS definition\nFROM pg_constraint\nINNER JOIN pg_class ON pg_constraint.conrelid = pg_class.oid\nINNER JOIN pg_namespace ON pg_class.relnamespace = pg_namespace.oid;\n")5256main: -> 0.0030s5257main: == 20220831182105 AddConstraintsView: migrated (0.0032s) ======================5258main: == 20220901035722 AddTempProjectMemberIndex: migrating ========================5259main: -- transaction_open?()5260main: -> 0.0000s5261main: -- view_exists?(:postgres_partitions)5262main: -> 0.0010s5263main: -- index_exists?(:members, :id, {:name=>"index_project_members_on_id_temp", :where=>"source_type = 'Project'", :algorithm=>:concurrently})5264main: -> 0.0105s5265main: -- add_index(:members, :id, {:name=>"index_project_members_on_id_temp", :where=>"source_type = 'Project'", :algorithm=>:concurrently})5266main: -> 0.0015s5267main: == 20220901035722 AddTempProjectMemberIndex: migrated (0.0200s) ===============5268main: == 20220901035725 ScheduleDestroyInvalidProjectMembers: migrating =============5269main: == 20220901035725 ScheduleDestroyInvalidProjectMembers: migrated (0.0002s) ====5270main: == 20220901071310 AddTmpIndexUserCalloutsOnAttentionRequestFeatureNames: migrating 5271main: -- transaction_open?()5272main: -> 0.0000s5273main: -- view_exists?(:postgres_partitions)5274main: -> 0.0011s5275main: -- index_exists?(:user_callouts, [:id], {:where=>"feature_name IN (47,48)", :name=>"tmp_index_user_callouts_on_attention_request_feature_names", :algorithm=>:concurrently})5276main: -> 0.0030s5277main: -- add_index(:user_callouts, [:id], {:where=>"feature_name IN (47,48)", :name=>"tmp_index_user_callouts_on_attention_request_feature_names", :algorithm=>:concurrently})5278main: -> 0.0014s5279main: == 20220901071310 AddTmpIndexUserCalloutsOnAttentionRequestFeatureNames: migrated (0.0125s) 5280main: == 20220901071355 CleanupAttentionRequestUserCallouts: migrating ==============5281main: == 20220901071355 CleanupAttentionRequestUserCallouts: migrated (0.0181s) =====5282main: == 20220901073300 RemovePartialTrigramIndexesForIssues: migrating =============5283main: -- transaction_open?()5284main: -> 0.0000s5285main: -- view_exists?(:postgres_partitions)5286main: -> 0.0013s5287main: -- indexes(:issues)5288main: -> 0.0248s5289main: -- remove_index(:issues, {:algorithm=>:concurrently, :name=>"index_issues_on_title_trigram_non_latin"})5290main: -> 0.0013s5291main: -- transaction_open?()5292main: -> 0.0000s5293main: -- view_exists?(:postgres_partitions)5294main: -> 0.0011s5295main: -- indexes(:issues)5296main: -> 0.0253s5297main: -- remove_index(:issues, {:algorithm=>:concurrently, :name=>"index_issues_on_description_trigram_non_latin"})5298main: -> 0.0014s5299main: == 20220901073300 RemovePartialTrigramIndexesForIssues: migrated (0.0740s) ====5300main: == 20220901090004 AddCanCreateGroupToApplicationSettings: migrating ===========5301main: -- add_column(:application_settings, :can_create_group, :boolean, {:default=>true, :null=>false})5302main: -> 0.0032s5303main: == 20220901090004 AddCanCreateGroupToApplicationSettings: migrated (0.0034s) ==5304main: == 20220901092853 UpdateCanCreateGroupApplicationSetting: migrating ===========5305main: -- execute("UPDATE application_settings SET can_create_group = true")5306main: -> 0.0020s5307main: == 20220901092853 UpdateCanCreateGroupApplicationSetting: migrated (0.0023s) ==5308main: == 20220901114501 OnlyAllowMergeIfAllStatusChecksPassed: migrating ============5309main: -- add_column(:project_settings, :only_allow_merge_if_all_status_checks_passed, :boolean, {:default=>false, :null=>false})5310main: -> 0.0021s5311main: == 20220901114501 OnlyAllowMergeIfAllStatusChecksPassed: migrated (0.0023s) ===5312main: == 20220901124637 AddLastDownloadedAtToPackages: migrating ====================5313main: -- add_column(:packages_packages, :last_downloaded_at, :datetime_with_timezone)5314main: -> 0.0013s5315main: == 20220901124637 AddLastDownloadedAtToPackages: migrated (0.0015s) ===========5316main: == 20220901131828 AddEnvironmentsProjectNameLowerPatternOpsIndex: migrating ===5317main: -- transaction_open?()5318main: -> 0.0000s5319main: -- view_exists?(:postgres_partitions)5320main: -> 0.0011s5321main: -- index_exists?(:environments, "project_id, lower(name) varchar_pattern_ops", {:name=>"index_environments_on_project_name_varchar_pattern_ops", :algorithm=>:concurrently})5322main: -> 0.0063s5323main: -- add_index(:environments, "project_id, lower(name) varchar_pattern_ops", {:name=>"index_environments_on_project_name_varchar_pattern_ops", :algorithm=>:concurrently})5324main: -> 0.0017s5325main: == 20220901131828 AddEnvironmentsProjectNameLowerPatternOpsIndex: migrated (0.0167s) 5326main: == 20220901184106 AddNotNullToBoardGroupRecentVisits: migrating ===============5327main: -- current_schema()5328main: -> 0.0005s5329main: -- transaction_open?()5330main: -> 0.0000s5331main: -- current_schema()5332main: -> 0.0005s5333main: -- transaction_open?()5334main: -> 0.0000s5335main: -- execute("ALTER TABLE board_group_recent_visits\nADD CONSTRAINT check_409f6caea4\nCHECK ( user_id IS NOT NULL )\nNOT VALID;\n")5336main: -> 0.0009s5337main: -- current_schema()5338main: -> 0.0005s5339main: -- transaction_open?()5340main: -> 0.0000s5341main: -- current_schema()5342main: -> 0.0004s5343main: -- transaction_open?()5344main: -> 0.0000s5345main: -- execute("ALTER TABLE board_group_recent_visits\nADD CONSTRAINT check_ddc74243ef\nCHECK ( group_id IS NOT NULL )\nNOT VALID;\n")5346main: -> 0.0008s5347main: -- current_schema()5348main: -> 0.0005s5349main: -- transaction_open?()5350main: -> 0.0000s5351main: -- current_schema()5352main: -> 0.0005s5353main: -- transaction_open?()5354main: -> 0.0000s5355main: -- execute("ALTER TABLE board_group_recent_visits\nADD CONSTRAINT check_fa7711a898\nCHECK ( board_id IS NOT NULL )\nNOT VALID;\n")5356main: -> 0.0008s5357main: == 20220901184106 AddNotNullToBoardGroupRecentVisits: migrated (0.0273s) ======5358main: == 20220901184246 AddNotNullToBoardProjectRecentVisits: migrating =============5359main: -- current_schema()5360main: -> 0.0007s5361main: -- transaction_open?()5362main: -> 0.0000s5363main: -- current_schema()5364main: -> 0.0005s5365main: -- transaction_open?()5366main: -> 0.0000s5367main: -- execute("ALTER TABLE board_project_recent_visits\nADD CONSTRAINT check_df7762a99a\nCHECK ( user_id IS NOT NULL )\nNOT VALID;\n")5368main: -> 0.0009s5369main: -- current_schema()5370main: -> 0.0005s5371main: -- transaction_open?()5372main: -> 0.0000s5373main: -- current_schema()5374main: -> 0.0005s5375main: -- transaction_open?()5376main: -> 0.0000s5377main: -- execute("ALTER TABLE board_project_recent_visits\nADD CONSTRAINT check_d9cc9b79da\nCHECK ( project_id IS NOT NULL )\nNOT VALID;\n")5378main: -> 0.0009s5379main: -- current_schema()5380main: -> 0.0008s5381main: -- transaction_open?()5382main: -> 0.0000s5383main: -- current_schema()5384main: -> 0.0006s5385main: -- transaction_open?()5386main: -> 0.0000s5387main: -- execute("ALTER TABLE board_project_recent_visits\nADD CONSTRAINT check_0386e26981\nCHECK ( board_id IS NOT NULL )\nNOT VALID;\n")5388main: -> 0.0009s5389main: == 20220901184246 AddNotNullToBoardProjectRecentVisits: migrated (0.0302s) ====5390main: == 20220901212027 AddMergeRequestIdToEnvironments: migrating ==================5391main: -- add_column(:environments, :merge_request_id, :bigint)5392main: -> 0.0014s5393main: == 20220901212027 AddMergeRequestIdToEnvironments: migrated (0.0016s) =========5394main: == 20220902065314 CreateCiPartitions: migrating ===============================5395main: -- create_table(:ci_partitions, {})5396main: -> 0.0023s5397main: == 20220902065314 CreateCiPartitions: migrated (0.0025s) ======================5398main: == 20220902065316 CreateDefaultPartitionRecord: migrating =====================5399main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].5400main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared, :gitlab_internal, :gitlab_pm].5401main: == 20220902065316 CreateDefaultPartitionRecord: migrated (0.0002s) ============5402main: == 20220902065317 AddPartitionIdToCiBuilds: migrating =========================5403main: -- add_column(:ci_builds, :partition_id, :bigint, {:default=>100, :null=>false})5404main: -> 0.0014s5405main: == 20220902065317 AddPartitionIdToCiBuilds: migrated (0.0016s) ================5406main: == 20220902065558 AddPartitionIdToCiBuildsMetadata: migrating =================5407main: -- add_column(:ci_builds_metadata, :partition_id, :bigint, {:default=>100, :null=>false})5408main: -> 0.0017s5409main: == 20220902065558 AddPartitionIdToCiBuildsMetadata: migrated (0.0020s) ========5410main: == 20220902065611 AddPartitionIdToCiJobArtifacts: migrating ===================5411main: -- add_column(:ci_job_artifacts, :partition_id, :bigint, {:default=>100, :null=>false})5412main: -> 0.0013s5413main: == 20220902065611 AddPartitionIdToCiJobArtifacts: migrated (0.0015s) ==========5414main: == 20220902065623 AddPartitionIdToCiPipelines: migrating ======================5415main: -- add_column(:ci_pipelines, :partition_id, :bigint, {:default=>100, :null=>false})5416main: -> 0.0012s5417main: == 20220902065623 AddPartitionIdToCiPipelines: migrated (0.0014s) =============5418main: == 20220902065635 AddPartitionIdToCiStages: migrating =========================5419main: -- add_column(:ci_stages, :partition_id, :bigint, {:default=>100, :null=>false})5420main: -> 0.0011s5421main: == 20220902065635 AddPartitionIdToCiStages: migrated (0.0013s) ================5422main: == 20220902065647 AddPartitionIdToCiPipelineVariables: migrating ==============5423main: -- add_column(:ci_pipeline_variables, :partition_id, :bigint, {:default=>100, :null=>false})5424main: -> 0.0014s5425main: == 20220902065647 AddPartitionIdToCiPipelineVariables: migrated (0.0016s) =====5426main: == 20220902111016 DeleteNullRecordsFromBoardGroupRecentVisits: migrating ======5427main: -- execute("DELETE FROM board_group_recent_visits WHERE user_id is null OR group_id is null OR board_id is null")5428main: -> 0.0010s5429main: == 20220902111016 DeleteNullRecordsFromBoardGroupRecentVisits: migrated (0.0013s) 5430main: == 20220902111038 DeleteNullRecordsFromBoardProjectRecentVisits: migrating ====5431main: -- execute("DELETE FROM board_project_recent_visits WHERE user_id is null OR project_id is null OR board_id is null")5432main: -> 0.0009s5433main: == 20220902111038 DeleteNullRecordsFromBoardProjectRecentVisits: migrated (0.0011s) 5434main: == 20220902165931 IndexEvironmentsOnMergeRequestId: migrating =================5435main: -- transaction_open?()5436main: -> 0.0000s5437main: -- view_exists?(:postgres_partitions)5438main: -> 0.0011s5439main: -- index_exists?(:environments, :merge_request_id, {:name=>"index_environments_on_merge_request_id", :algorithm=>:concurrently})5440main: -> 0.0061s5441main: -- add_index(:environments, :merge_request_id, {:name=>"index_environments_on_merge_request_id", :algorithm=>:concurrently})5442main: -> 0.0014s5443main: == 20220902165931 IndexEvironmentsOnMergeRequestId: migrated (0.0153s) ========5444main: == 20220902170131 AddFkConstraintToEnvironmentsMergeRequestId: migrating ======5445main: -- transaction_open?()5446main: -> 0.0000s5447main: -- foreign_keys(:environments)5448main: -> 0.0029s5449main: -- transaction_open?()5450main: -> 0.0000s5451main: -- execute("ALTER TABLE environments\nADD CONSTRAINT fk_01a033a308\nFOREIGN KEY (merge_request_id)\nREFERENCES merge_requests (id)\nON DELETE SET NULL\nNOT VALID;\n")5452main: -> 0.0011s5453main: -- execute("ALTER TABLE environments VALIDATE CONSTRAINT fk_01a033a308;")5454main: -> 0.0013s5455main: == 20220902170131 AddFkConstraintToEnvironmentsMergeRequestId: migrated (0.0086s) 5456main: == 20220902204048 MoveSecurityFindingsTableToGitlabPartitionsDynamicSchema: migrating 5457main: -- transaction_open?()5458main: -> 0.0000s5459main: -- execute("LOCK TABLE vulnerability_scanners, security_scans, security_findings IN ACCESS EXCLUSIVE MODE\n")5460main: -> 0.0007s5461main: -- execute("SELECT\n pg_get_constraintdef(pg_catalog.pg_constraint.oid)\nFROM\n pg_catalog.pg_constraint\nINNER JOIN pg_class ON pg_class.oid = pg_catalog.pg_constraint.conrelid\nWHERE\n conname = 'check_partition_number' AND\n pg_class.relname = 'security_findings'\n")5462main: -> 0.0020s5463main: -- execute("ALTER TABLE security_findings RENAME TO security_findings_1;\n")5464main: -> 0.0056s5465main: -- execute("ALTER INDEX security_findings_pkey RENAME TO security_findings_1_pkey;\n")5466main: -> 0.0007s5467main: -- execute("CREATE TABLE security_findings (\n LIKE security_findings_1 INCLUDING ALL\n) PARTITION BY LIST (partition_number);\n")5468main: -> 0.0027s5469main: -- execute("ALTER SEQUENCE security_findings_id_seq OWNED BY public.security_findings.id;\n")5470main: -> 0.0008s5471main: -- execute("ALTER TABLE security_findings\nADD CONSTRAINT fk_rails_729b763a54 FOREIGN KEY (scanner_id) REFERENCES vulnerability_scanners(id) ON DELETE CASCADE;\n")5472main: -> 0.0009s5473main: -- execute("ALTER TABLE security_findings\nADD CONSTRAINT fk_rails_bb63863cf1 FOREIGN KEY (scan_id) REFERENCES security_scans(id) ON DELETE CASCADE;\n")5474main: -> 0.0008s5475main: -- execute("ALTER TABLE security_findings_1 SET SCHEMA gitlab_partitions_dynamic;\n")5476main: -> 0.0008s5477main: -- execute("ALTER TABLE security_findings ATTACH PARTITION gitlab_partitions_dynamic.security_findings_1 FOR VALUES IN (1);\n")5478main: -> 0.0024s5479main: -- execute("ALTER TABLE security_findings DROP CONSTRAINT check_partition_number;\n")5480main: -> 0.0010s5481main: -- execute("ALTER INDEX gitlab_partitions_dynamic.index_security_findings_on_unique_columns RENAME TO security_findings_1_uuid_scan_id_partition_number_idx;\n")5482main: -> 0.0007s5483main: -- execute("ALTER INDEX gitlab_partitions_dynamic.index_security_findings_on_confidence RENAME TO security_findings_1_confidence_idx;\n")5484main: -> 0.0007s5485main: -- execute("ALTER INDEX gitlab_partitions_dynamic.index_security_findings_on_project_fingerprint RENAME TO security_findings_1_project_fingerprint_idx;\n")5486main: -> 0.0006s5487main: -- execute("ALTER INDEX gitlab_partitions_dynamic.index_security_findings_on_scan_id_and_deduplicated RENAME TO security_findings_1_scan_id_deduplicated_idx;\n")5488main: -> 0.0006s5489main: -- execute("ALTER INDEX gitlab_partitions_dynamic.index_security_findings_on_scan_id_and_id RENAME TO security_findings_1_scan_id_id_idx;\n")5490main: -> 0.0006s5491main: -- execute("ALTER INDEX gitlab_partitions_dynamic.index_security_findings_on_scanner_id RENAME TO security_findings_1_scanner_id_idx;\n")5492main: -> 0.0006s5493main: -- execute("ALTER INDEX gitlab_partitions_dynamic.index_security_findings_on_severity RENAME TO security_findings_1_severity_idx;\n")5494main: -> 0.0006s5495main: == 20220902204048 MoveSecurityFindingsTableToGitlabPartitionsDynamicSchema: migrated (0.0278s) 5496main: == 20220904173342 ValidateNotNullConstraintBoardGroupRecentVisits: migrating ==5497main: -- current_schema()5498main: -> 0.0006s5499main: -- execute("ALTER TABLE board_group_recent_visits VALIDATE CONSTRAINT check_409f6caea4;")5500main: -> 0.0008s5501main: -- current_schema()5502main: -> 0.0004s5503main: -- execute("ALTER TABLE board_group_recent_visits VALIDATE CONSTRAINT check_ddc74243ef;")5504main: -> 0.0008s5505main: -- current_schema()5506main: -> 0.0006s5507main: -- execute("ALTER TABLE board_group_recent_visits VALIDATE CONSTRAINT check_fa7711a898;")5508main: -> 0.0007s5509main: == 20220904173342 ValidateNotNullConstraintBoardGroupRecentVisits: migrated (0.0108s) 5510main: == 20220904173430 ValidateNotNullConstraintBoardProjectRecentVisits: migrating 5511main: -- current_schema()5512main: -> 0.0005s5513main: -- execute("ALTER TABLE board_project_recent_visits VALIDATE CONSTRAINT check_df7762a99a;")5514main: -> 0.0007s5515main: -- current_schema()5516main: -> 0.0005s5517main: -- execute("ALTER TABLE board_project_recent_visits VALIDATE CONSTRAINT check_d9cc9b79da;")5518main: -> 0.0006s5519main: -- current_schema()5520main: -> 0.0004s5521main: -- execute("ALTER TABLE board_project_recent_visits VALIDATE CONSTRAINT check_0386e26981;")5522main: -> 0.0007s5523main: == 20220904173430 ValidateNotNullConstraintBoardProjectRecentVisits: migrated (0.0093s) 5524main: == 20220905090300 AddTmpIndexMergeRequestReviewersAttentionRequestState: migrating 5525main: -- transaction_open?()5526main: -> 0.0000s5527main: -- view_exists?(:postgres_partitions)5528main: -> 0.0010s5529main: -- index_exists?(:merge_request_reviewers, [:id], {:where=>"state = 2", :name=>"tmp_index_merge_request_reviewers_on_attention_requested_state", :algorithm=>:concurrently})5530main: -> 0.0045s5531main: -- add_index(:merge_request_reviewers, [:id], {:where=>"state = 2", :name=>"tmp_index_merge_request_reviewers_on_attention_requested_state", :algorithm=>:concurrently})5532main: -> 0.0016s5533main: == 20220905090300 AddTmpIndexMergeRequestReviewersAttentionRequestState: migrated (0.0145s) 5534main: == 20220905090339 ResetAttentionRequestedMergeRequestsReviewersStateToUnreviewed: migrating 5535main: == 20220905090339 ResetAttentionRequestedMergeRequestsReviewersStateToUnreviewed: migrated (0.0180s) 5536main: == 20220905112710 AddAsyncIndexToTodosToCoverPendingQuery: migrating ==========5537main: -- index_exists?(:todos, [:user_id, :project_id, :target_type, :target_id, :id], {:name=>"index_on_todos_user_project_target_and_state", :where=>"state = 'pending'", :algorithm=>:concurrently})5538main: -> 0.0084s5539main: -- add_index_options(:todos, [:user_id, :project_id, :target_type, :target_id, :id], {:name=>"index_on_todos_user_project_target_and_state", :where=>"state = 'pending'", :algorithm=>:concurrently})5540main: -> 0.0001s5541main: == 20220905112710 AddAsyncIndexToTodosToCoverPendingQuery: migrated (0.0146s) =5542main: == 20220905120848 BackfillEpicCacheCounts: migrating ==========================5543main: == 20220905120848 BackfillEpicCacheCounts: migrated (0.0293s) =================5544main: == 20220906074449 ScheduleDisableLegacyOpenSourceLicenseForProjectsLessThanOneMb: migrating 5545main: == 20220906074449 ScheduleDisableLegacyOpenSourceLicenseForProjectsLessThanOneMb: migrated (0.0001s) 5546main: == 20220906093857 AddColumnBranchFilterStrategyToWebHooks: migrating ==========5547main: -- add_column(:web_hooks, :branch_filter_strategy, :integer, {:null=>false, :default=>0, :limit=>2})5548main: -> 0.0020s5549main: == 20220906093857 AddColumnBranchFilterStrategyToWebHooks: migrated (0.0021s) =5550main: == 20220906155105 AddStartTimeAndEndTimeAndStatusToMlCandidates: migrating ====5551main: -- add_column(:ml_candidates, :start_time, :bigint)5552main: -> 0.0012s5553main: -- add_column(:ml_candidates, :end_time, :bigint)5554main: -> 0.0007s5555main: -- add_column(:ml_candidates, :status, :smallint, {:default=>0, :null=>false})5556main: -> 0.0013s5557main: == 20220906155105 AddStartTimeAndEndTimeAndStatusToMlCandidates: migrated (0.0034s) 5558main: == 20220906204832 AddLockedToCiPipelineArtifacts: migrating ===================5559main: -- transaction_open?()5560main: -> 0.0000s5561main: -- add_column("ci_pipeline_artifacts", "locked", :smallint, {:default=>2})5562main: -> 0.0014s5563main: == 20220906204832 AddLockedToCiPipelineArtifacts: migrated (0.0039s) ==========5564main: == 20220906212931 AddPartialIndexForCiPipelineArtifactsUnlockedWithExpireAt: migrating 5565main: -- transaction_open?()5566main: -> 0.0000s5567main: -- view_exists?(:postgres_partitions)5568main: -> 0.0011s5569main: -- index_exists?("ci_pipeline_artifacts", [:expire_at], {:where=>"locked = 0 AND expire_at IS NOT NULL", :name=>"ci_pipeline_artifacts_on_expire_at_for_removal", :algorithm=>:concurrently})5570main: -> 0.0066s5571main: -- add_index("ci_pipeline_artifacts", [:expire_at], {:where=>"locked = 0 AND expire_at IS NOT NULL", :name=>"ci_pipeline_artifacts_on_expire_at_for_removal", :algorithm=>:concurrently})5572main: -> 0.0016s5573main: == 20220906212931 AddPartialIndexForCiPipelineArtifactsUnlockedWithExpireAt: migrated (0.0164s) 5574main: == 20220907115806 AddSecurityOrchestrationPolicyConfigurationId: migrating ====5575main: -- transaction_open?()5576main: -> 0.0000s5577main: -- column_exists?(:approval_project_rules, :security_orchestration_policy_configuration_id)5578main: -> 0.0024s5579main: -- add_column(:approval_project_rules, :security_orchestration_policy_configuration_id, :bigint)5580main: -> 0.0009s5581main: -- transaction_open?()5582main: -> 0.0000s5583main: -- column_exists?(:approval_merge_request_rules, :security_orchestration_policy_configuration_id)5584main: -> 0.0023s5585main: -- add_column(:approval_merge_request_rules, :security_orchestration_policy_configuration_id, :bigint)5586main: -> 0.0008s5587main: -- transaction_open?()5588main: -> 0.0000s5589main: -- view_exists?(:postgres_partitions)5590main: -> 0.0010s5591main: -- index_exists?(:approval_project_rules, :security_orchestration_policy_configuration_id, {:name=>"idx_approval_project_rules_on_sec_orchestration_config_id", :algorithm=>:concurrently})5592main: -> 0.0049s5593main: -- add_index(:approval_project_rules, :security_orchestration_policy_configuration_id, {:name=>"idx_approval_project_rules_on_sec_orchestration_config_id", :algorithm=>:concurrently})5594main: -> 0.0015s5595main: -- transaction_open?()5596main: -> 0.0000s5597main: -- view_exists?(:postgres_partitions)5598main: -> 0.0009s5599main: -- index_exists?(:approval_merge_request_rules, :security_orchestration_policy_configuration_id, {:name=>"idx_approval_merge_request_rules_on_sec_orchestration_config_id", :algorithm=>:concurrently})5600main: -> 0.0059s5601main: -- add_index(:approval_merge_request_rules, :security_orchestration_policy_configuration_id, {:name=>"idx_approval_merge_request_rules_on_sec_orchestration_config_id", :algorithm=>:concurrently})5602main: -> 0.0014s5603main: -- transaction_open?()5604main: -> 0.0000s5605main: -- foreign_keys(:approval_project_rules)5606main: -> 0.0029s5607main: -- transaction_open?()5608main: -> 0.0000s5609main: -- execute("ALTER TABLE approval_project_rules\nADD CONSTRAINT fk_efa5a1e3fb\nFOREIGN KEY (security_orchestration_policy_configuration_id)\nREFERENCES security_orchestration_policy_configurations (id)\nON DELETE CASCADE\nNOT VALID;\n")5610main: -> 0.0011s5611main: -- execute("ALTER TABLE approval_project_rules VALIDATE CONSTRAINT fk_efa5a1e3fb;")5612main: -> 0.0011s5613main: -- transaction_open?()5614main: -> 0.0000s5615main: -- foreign_keys(:approval_merge_request_rules)5616main: -> 0.0030s5617main: -- transaction_open?()5618main: -> 0.0000s5619main: -- execute("ALTER TABLE approval_merge_request_rules\nADD CONSTRAINT fk_5822f009ea\nFOREIGN KEY (security_orchestration_policy_configuration_id)\nREFERENCES security_orchestration_policy_configurations (id)\nON DELETE CASCADE\nNOT VALID;\n")5620main: -> 0.0011s5621main: -- execute("ALTER TABLE approval_merge_request_rules VALIDATE CONSTRAINT fk_5822f009ea;")5622main: -> 0.0011s5623main: == 20220907115806 AddSecurityOrchestrationPolicyConfigurationId: migrated (0.0585s) 5624main: == 20220907122648 PopulateSecurityOrchestrationPolicyConfigurationId: migrating 5625main: == 20220907122648 PopulateSecurityOrchestrationPolicyConfigurationId: migrated (0.0563s) 5626main: == 20220907124320 AddInternalToNotes: migrating ===============================5627main: -- add_column(:notes, :internal, :boolean, {:default=>false, :null=>false})5628main: -> 0.0015s5629main: == 20220907124320 AddInternalToNotes: migrated (0.0017s) ======================5630main: == 20220908125146 RemoveFreeUserCapRemediationWorker: migrating ===============5631main: == 20220908125146 RemoveFreeUserCapRemediationWorker: migrated (0.0005s) ======5632main: == 20220908150054 AddRunnerRegistrationEnabledToNamespaceSettings: migrating ==5633main: -- add_column(:namespace_settings, :runner_registration_enabled, :boolean, {:default=>true})5634main: -> 0.0016s5635main: == 20220908150054 AddRunnerRegistrationEnabledToNamespaceSettings: migrated (0.0018s) 5636main: == 20220909091410 AddDismissalReasonToVulnerabilityStateTransitions: migrating 5637main: -- add_column(:vulnerability_state_transitions, :dismissal_reason, :smallint)5638main: -> 0.0014s5639main: == 20220909091410 AddDismissalReasonToVulnerabilityStateTransitions: migrated (0.0016s) 5640main: == 20220909094752 AddFreeUserCapOverLimtNotifiedAtToNamespaceDetails: migrating 5641main: -- transaction_open?()5642main: -> 0.0000s5643main: -- add_column("namespace_details", "free_user_cap_over_limt_notified_at", :datetime_with_timezone)5644main: -> 0.0008s5645main: == 20220909094752 AddFreeUserCapOverLimtNotifiedAtToNamespaceDetails: migrated (0.0034s) 5646main: == 20220909113809 AddEnvironmentsProjectNameLowerPatternOpsStateIndex: migrating 5647main: -- transaction_open?()5648main: -> 0.0001s5649main: -- view_exists?(:postgres_partitions)5650main: -> 0.0012s5651main: -- index_exists?(:environments, "project_id, lower(name) varchar_pattern_ops, state", {:name=>"index_environments_on_project_name_varchar_pattern_ops_state", :algorithm=>:concurrently})5652main: -> 0.0081s5653main: -- add_index(:environments, "project_id, lower(name) varchar_pattern_ops, state", {:name=>"index_environments_on_project_name_varchar_pattern_ops_state", :algorithm=>:concurrently})5654main: -> 0.0016s5655main: == 20220909113809 AddEnvironmentsProjectNameLowerPatternOpsStateIndex: migrated (0.0185s) 5656main: == 20220909114220 DropEnvironmentsProjectNameLowerPatternOpsIndex: migrating ==5657main: -- transaction_open?()5658main: -> 0.0000s5659main: -- view_exists?(:postgres_partitions)5660main: -> 0.0010s5661main: -- indexes(:environments)5662main: -> 0.0071s5663main: -- remove_index(:environments, {:algorithm=>:concurrently, :name=>"index_environments_on_project_name_varchar_pattern_ops"})5664main: -> 0.0013s5665main: == 20220909114220 DropEnvironmentsProjectNameLowerPatternOpsIndex: migrated (0.0162s) 5666main: == 20220912085047 AddIndexToTodosPendingQuery: migrating ======================5667main: -- transaction_open?()5668main: -> 0.0000s5669main: -- view_exists?(:postgres_partitions)5670main: -> 0.0010s5671main: -- index_exists?(:todos, [:user_id, :project_id, :target_type, :target_id, :id], {:name=>"index_on_todos_user_project_target_and_state", :where=>"state = 'pending'", :algorithm=>:concurrently})5672main: -> 0.0088s5673main: -- add_index(:todos, [:user_id, :project_id, :target_type, :target_id, :id], {:name=>"index_on_todos_user_project_target_and_state", :where=>"state = 'pending'", :algorithm=>:concurrently})5674main: -> 0.0016s5675main: == 20220912085047 AddIndexToTodosPendingQuery: migrated (0.0223s) =============5676main: == 20220912110433 PrepareCreateInternalNotesIndexOnId: migrating ==============5677main: -- index_exists?(:notes, :id, {:where=>"internal = true", :name=>"index_notes_on_id_where_internal", :algorithm=>:concurrently})5678main: -> 0.0091s5679main: -- add_index_options(:notes, :id, {:where=>"internal = true", :name=>"index_notes_on_id_where_internal", :algorithm=>:concurrently})5680main: -> 0.0001s5681main: == 20220912110433 PrepareCreateInternalNotesIndexOnId: migrated (0.0152s) =====5682main: == 20220912153839 CreatePackagesRpmRepositoryFile: migrating ==================5683main: -- create_table(:packages_rpm_repository_files, {})5684main: -- quote_column_name(:file)5685main: -> 0.0000s5686main: -- quote_column_name(:file_name)5687main: -> 0.0000s5688main: -> 0.0059s5689main: == 20220912153839 CreatePackagesRpmRepositoryFile: migrated (0.0062s) =========5690main: == 20220912180807 AddEpochColumnToRpmMetadata: migrating ======================5691main: -- add_column(:packages_rpm_metadata, :epoch, :integer, {:null=>false, :default=>0})5692main: -> 0.0017s5693main: == 20220912180807 AddEpochColumnToRpmMetadata: migrated (0.0019s) =============5694main: == 20220913030552 AddTmpIndexSystemNoteMetadataOnAttentionRequestActions: migrating 5695main: -- transaction_open?()5696main: -> 0.0000s5697main: -- view_exists?(:postgres_partitions)5698main: -> 0.0010s5699main: -- index_exists?(:system_note_metadata, [:id], {:where=>"action IN ('attention_requested', 'attention_request_removed')", :name=>"tmp_index_system_note_metadata_on_attention_request_actions", :algorithm=>:concurrently})5700main: -> 0.0036s5701main: -- add_index(:system_note_metadata, [:id], {:where=>"action IN ('attention_requested', 'attention_request_removed')", :name=>"tmp_index_system_note_metadata_on_attention_request_actions", :algorithm=>:concurrently})5702main: -> 0.0016s5703main: == 20220913030552 AddTmpIndexSystemNoteMetadataOnAttentionRequestActions: migrated (0.0137s) 5704main: == 20220913030624 CleanupAttentionRequestRelatedSystemNotes: migrating ========5705main: == 20220913030624 CleanupAttentionRequestRelatedSystemNotes: migrated (0.0173s) 5706main: == 20220913043728 CreateUserPhoneNumberValidations: migrating =================5707main: -- create_table(:user_phone_number_validations, {:id=>false})5708main: -- quote_column_name(:country)5709main: -> 0.0000s5710main: -- quote_column_name(:phone_number)5711main: -> 0.0000s5712main: -- quote_column_name(:telesign_reference_xid)5713main: -> 0.0000s5714main: -> 0.0062s5715main: == 20220913043728 CreateUserPhoneNumberValidations: migrated (0.0065s) ========5716main: == 20220913082728 DropIndexCadenceCreateIterationsAutomation: migrating =======5717main: -- transaction_open?()5718main: -> 0.0000s5719main: -- view_exists?(:postgres_partitions)5720main: -> 0.0012s5721main: -- indexes(:iterations_cadences)5722main: -> 0.0025s5723main: -- remove_index(:iterations_cadences, {:algorithm=>:concurrently, :name=>"cadence_create_iterations_automation"})5724main: -> 0.0012s5725main: == 20220913082728 DropIndexCadenceCreateIterationsAutomation: migrated (0.0114s) 5726main: == 20220913082824 FinalizeInvalidGroupMemberCleanup: migrating ================5727main: == 20220913082824 FinalizeInvalidGroupMemberCleanup: migrated (0.0001s) =======5728main: == 20220913082930 RenameIterationsCadencesLastRunDateToNextRunDate: migrating =5729main: -- transaction_open?()5730main: -> 0.0000s5731main: -- columns(:iterations_cadences)5732main: -> 0.0023s5733main: -- column_exists?(:iterations_cadences, :id)5734main: -> 0.0023s5735main: -- column_exists?(:iterations_cadences, :next_run_date)5736main: -> 0.0022s5737main: -- columns(:iterations_cadences)5738main: -> 0.0020s5739main: -- add_column(:iterations_cadences, :next_run_date, :date, {:limit=>nil, :precision=>nil, :scale=>nil})5740main: -> 0.0011s5741main: -- transaction_open?()5742main: -> 0.0000s5743main: -- exec_query("SELECT COUNT(*) AS count FROM \"iterations_cadences\"")5744main: -> 0.0008s5745main: -- indexes(:iterations_cadences)5746main: -> 0.0024s5747main: -- foreign_keys(:iterations_cadences)5748main: -> 0.0029s5749main: -- transaction_open?()5750main: -> 0.0000s5751main: -- column_exists?(:iterations_cadences, :last_run_date)5752main: -> 0.0021s5753main: -- column_exists?(:iterations_cadences, :next_run_date)5754main: -> 0.0019s5755main: -- current_schema()5756main: -> 0.0005s5757main: -- transaction_open?()5758main: -> 0.0000s5759main: -- quote_table_name(:iterations_cadences)5760main: -> 0.0000s5761main: -- quote_column_name(:last_run_date)5762main: -> 0.0000s5763main: -- quote_column_name(:next_run_date)5764main: -> 0.0000s5765main: -- columns(:iterations_cadences)5766main: -> 0.0021s5767main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_9fd8af262d53()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n IF NEW.\"last_run_date\" IS NOT DISTINCT FROM NULL AND NEW.\"next_run_date\" IS DISTINCT FROM NULL THEN\n NEW.\"last_run_date\" = NEW.\"next_run_date\";\n END IF;\n\n IF NEW.\"next_run_date\" IS NOT DISTINCT FROM NULL AND NEW.\"last_run_date\" IS DISTINCT FROM NULL THEN\n NEW.\"next_run_date\" = NEW.\"last_run_date\";\n END IF;\n\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_9fd8af262d53\nON \"iterations_cadences\";\n\nCREATE TRIGGER trigger_9fd8af262d53\nBEFORE INSERT ON \"iterations_cadences\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_9fd8af262d53();\n")5768main: -> 0.0011s5769main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_7b05fd88b3b0()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"last_run_date\" := NEW.\"next_run_date\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_7b05fd88b3b0\nON \"iterations_cadences\";\n\nCREATE TRIGGER trigger_7b05fd88b3b0\nBEFORE UPDATE OF \"next_run_date\" ON \"iterations_cadences\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_7b05fd88b3b0();\n")5770main: -> 0.0011s5771main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_226835a80df2()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"next_run_date\" := NEW.\"last_run_date\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_226835a80df2\nON \"iterations_cadences\";\n\nCREATE TRIGGER trigger_226835a80df2\nBEFORE UPDATE OF \"last_run_date\" ON \"iterations_cadences\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_226835a80df2();\n")5772main: -> 0.0009s5773main: == 20220913082930 RenameIterationsCadencesLastRunDateToNextRunDate: migrated (0.0356s) 5774main: == 20220913083015 CleanUpRenameIterationsCadencesLastRunDateToNextRunDate: migrating 5775main: -- column_exists?(:iterations_cadences, :last_run_date)5776main: -> 0.0023s5777main: -- transaction_open?()5778main: -> 0.0000s5779main: -- quote_table_name(:iterations_cadences)5780main: -> 0.0000s5781main: -- execute("DROP TRIGGER IF EXISTS trigger_9fd8af262d53\nON \"iterations_cadences\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_9fd8af262d53;\n")5782main: -> 0.0008s5783main: -- execute("DROP TRIGGER IF EXISTS trigger_7b05fd88b3b0\nON \"iterations_cadences\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_7b05fd88b3b0;\n")5784main: -> 0.0008s5785main: -- execute("DROP TRIGGER IF EXISTS trigger_226835a80df2\nON \"iterations_cadences\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_226835a80df2;\n")5786main: -> 0.0008s5787main: -- remove_column(:iterations_cadences, :last_run_date)5788main: -> 0.0007s5789main: == 20220913083015 CleanUpRenameIterationsCadencesLastRunDateToNextRunDate: migrated (0.0094s) 5790main: == 20220913084123 AddTimestampToMlCandidateMetrics: migrating =================5791main: -- add_column(:ml_candidate_metrics, :tracked_at, :bigint)5792main: -> 0.0012s5793main: == 20220913084123 AddTimestampToMlCandidateMetrics: migrated (0.0013s) ========5794main: == 20220914005141 ChangeNamespaceIdNotNullInMembers: migrating ================5795main: -- current_schema()5796main: -> 0.0006s5797main: -- transaction_open?()5798main: -> 0.0000s5799main: -- current_schema()5800main: -> 0.0004s5801main: -- transaction_open?()5802main: -> 0.0000s5803main: -- execute("ALTER TABLE members\nADD CONSTRAINT check_508774aac0\nCHECK ( member_namespace_id IS NOT NULL )\nNOT VALID;\n")5804main: -> 0.0008s5805main: == 20220914005141 ChangeNamespaceIdNotNullInMembers: migrated (0.0089s) =======5806main: == 20220914010233 ChangeMembersNamespaceForeignKeyOnDeleteConstraint: migrating 5807main: -- transaction_open?()5808main: -> 0.0000s5809main: -- foreign_keys(:members)5810main: -> 0.0031s5811main: -- transaction_open?()5812main: -> 0.0000s5813main: -- execute("ALTER TABLE members\nADD CONSTRAINT fk_2f85abf8f1\nFOREIGN KEY (member_namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")5814main: -> 0.0016s5815main: == 20220914010233 ChangeMembersNamespaceForeignKeyOnDeleteConstraint: migrated (0.0075s) 5816main: == 20220914070927 FinalizeInvalidProjectMemberCleanup: migrating ==============5817main: == 20220914070927 FinalizeInvalidProjectMemberCleanup: migrated (0.0001s) =====5818main: == 20220914080716 AddIndexToCandidateIdAndNameOnMlCandidateParams: migrating ==5819main: -- transaction_open?()5820main: -> 0.0000s5821main: -- view_exists?(:postgres_partitions)5822main: -> 0.0011s5823main: -- index_exists?(:ml_candidate_params, [:candidate_id, :name], {:unique=>true, :name=>"index_ml_candidate_params_on_candidate_id_on_name", :algorithm=>:concurrently})5824main: -> 0.0025s5825main: -- add_index(:ml_candidate_params, [:candidate_id, :name], {:unique=>true, :name=>"index_ml_candidate_params_on_candidate_id_on_name", :algorithm=>:concurrently})5826main: -> 0.0013s5827main: == 20220914080716 AddIndexToCandidateIdAndNameOnMlCandidateParams: migrated (0.0119s) 5828main: == 20220914093408 AddUniqueIdPartitionIdIndexToCiBuildMetadata: migrating =====5829main: -- index_exists?(:ci_builds_metadata, [:id, :partition_id], {:unique=>true, :name=>:index_ci_builds_metadata_on_id_partition_id_unique, :algorithm=>:concurrently})5830main: -> 0.0045s5831main: -- add_index_options(:ci_builds_metadata, [:id, :partition_id], {:unique=>true, :name=>:index_ci_builds_metadata_on_id_partition_id_unique, :algorithm=>:concurrently})5832main: -> 0.0001s5833main: == 20220914093408 AddUniqueIdPartitionIdIndexToCiBuildMetadata: migrated (0.0106s) 5834main: == 20220914112457 AddRejectNonDcoCommitsToPushRules: migrating ================5835main: -- add_column(:push_rules, :reject_non_dco_commits, :boolean)5836main: -> 0.0015s5837main: == 20220914112457 AddRejectNonDcoCommitsToPushRules: migrated (0.0017s) =======5838main: == 20220914130800 AddJitsuKeyToProjects: migrating ============================5839main: -- transaction_open?()5840main: -> 0.0000s5841main: -- add_column(:project_settings, :jitsu_key, :text)5842main: -> 0.0012s5843main: == 20220914130800 AddJitsuKeyToProjects: migrated (0.0043s) ===================5844main: == 20220914131449 AddTextLimitToProjectsJitsuKey: migrating ===================5845main: -- transaction_open?()5846main: -> 0.0000s5847main: -- current_schema()5848main: -> 0.0006s5849main: -- transaction_open?()5850main: -> 0.0000s5851main: -- execute("ALTER TABLE project_settings\nADD CONSTRAINT check_2981f15877\nCHECK ( char_length(jitsu_key) <= 100 )\nNOT VALID;\n")5852main: -> 0.0011s5853main: -- current_schema()5854main: -> 0.0005s5855main: -- execute("ALTER TABLE project_settings VALIDATE CONSTRAINT check_2981f15877;")5856main: -> 0.0019s5857main: == 20220914131449 AddTextLimitToProjectsJitsuKey: migrated (0.0117s) ==========5858main: == 20220914174705 RemoveNotNullConstraintFromSbomSourceFingerprint: migrating =5859main: -- change_column_null(:sbom_sources, :fingerprint, true)5860main: -> 0.0008s5861main: == 20220914174705 RemoveNotNullConstraintFromSbomSourceFingerprint: migrated (0.0010s) 5862main: == 20220915103831 AddUniqueBuildIdPartitionIdIndexToCiBuildMetadata: migrating 5863main: -- index_exists?(:ci_builds_metadata, [:build_id, :partition_id], {:unique=>true, :name=>:index_ci_builds_metadata_on_build_id_partition_id_unique, :algorithm=>:concurrently})5864main: -> 0.0046s5865main: -- add_index_options(:ci_builds_metadata, [:build_id, :partition_id], {:unique=>true, :name=>:index_ci_builds_metadata_on_build_id_partition_id_unique, :algorithm=>:concurrently})5866main: -> 0.0001s5867main: == 20220915103831 AddUniqueBuildIdPartitionIdIndexToCiBuildMetadata: migrated (0.0109s) 5868main: == 20220915140802 CreateMergeRequestPredictions: migrating ====================5869main: -- create_table(:merge_request_predictions, {:id=>false})5870main: -> 0.0035s5871main: == 20220915140802 CreateMergeRequestPredictions: migrated (0.0037s) ===========5872main: == 20220915192521 PrepareAsyncTrigramIndexForVulnerabilityReadsContainerImages: migrating 5873main: -- index_exists?(:vulnerability_reads, :location_image, {:name=>"index_vulnerability_reads_on_location_image_trigram", :using=>:gin, :opclass=>{:location_image=>:gin_trgm_ops}, :where=>"report_type = ANY (ARRAY[2, 7]) AND location_image IS NOT NULL", :algorithm=>:concurrently})5874main: -> 0.0100s5875main: -- add_index_options(:vulnerability_reads, :location_image, {:name=>"index_vulnerability_reads_on_location_image_trigram", :using=>:gin, :opclass=>{:location_image=>:gin_trgm_ops}, :where=>"report_type = ANY (ARRAY[2, 7]) AND location_image IS NOT NULL", :algorithm=>:concurrently})5876main: -> 0.0001s5877main: == 20220915192521 PrepareAsyncTrigramIndexForVulnerabilityReadsContainerImages: migrated (0.0174s) 5878main: == 20220916054103 RemoveExperienceLevelColumn: migrating ======================5879main: -- remove_column(:user_preferences, :experience_level)5880main: -> 0.0010s5881main: == 20220916054103 RemoveExperienceLevelColumn: migrated (0.0012s) =============5882main: == 20220916065418 AddIndexIdPartitionIdToCiBuildsMetadata: migrating ==========5883main: -- transaction_open?()5884main: -> 0.0000s5885main: -- view_exists?(:postgres_partitions)5886main: -> 0.0010s5887main: -- index_exists?(:ci_builds_metadata, [:id, :partition_id], {:unique=>true, :name=>:index_ci_builds_metadata_on_id_partition_id_unique, :algorithm=>:concurrently})5888main: -> 0.0043s5889main: -- add_index(:ci_builds_metadata, [:id, :partition_id], {:unique=>true, :name=>:index_ci_builds_metadata_on_id_partition_id_unique, :algorithm=>:concurrently})5890main: -> 0.0014s5891main: == 20220916065418 AddIndexIdPartitionIdToCiBuildsMetadata: migrated (0.0164s) =5892main: == 20220916070101 AddIndexBuildIdPartitionIdToCiBuildMetadata: migrating ======5893main: -- transaction_open?()5894main: -> 0.0000s5895main: -- view_exists?(:postgres_partitions)5896main: -> 0.0009s5897main: -- index_exists?(:ci_builds_metadata, [:build_id, :partition_id], {:unique=>true, :name=>:index_ci_builds_metadata_on_build_id_partition_id_unique, :algorithm=>:concurrently})5898main: -> 0.0050s5899main: -- add_index(:ci_builds_metadata, [:build_id, :partition_id], {:unique=>true, :name=>:index_ci_builds_metadata_on_build_id_partition_id_unique, :algorithm=>:concurrently})5900main: -> 0.0014s5901main: == 20220916070101 AddIndexBuildIdPartitionIdToCiBuildMetadata: migrated (0.0167s) 5902main: == 20220916094641 AddSourceIdToBulkImportEntities: migrating ==================5903main: -- add_column(:bulk_import_entities, :source_xid, :integer)5904main: -> 0.0014s5905main: == 20220916094641 AddSourceIdToBulkImportEntities: migrated (0.0016s) =========5906main: == 20220916103311 AddIndexOnJiraConnectInstallationsInstanceUrl: migrating ====5907main: -- transaction_open?()5908main: -> 0.0000s5909main: -- view_exists?(:postgres_partitions)5910main: -> 0.0010s5911main: -- index_exists?(:jira_connect_installations, :instance_url, {:name=>"index_jira_connect_installations_on_instance_url", :algorithm=>:concurrently})5912main: -> 0.0024s5913main: -- add_index(:jira_connect_installations, :instance_url, {:name=>"index_jira_connect_installations_on_instance_url", :algorithm=>:concurrently})5914main: -> 0.0014s5915main: == 20220916103311 AddIndexOnJiraConnectInstallationsInstanceUrl: migrated (0.0118s) 5916main: == 20220916112841 RemoveUnusedAggregationColumns: migrating ===================5917main: -- transaction_open?()5918main: -> 0.0000s5919main: -- remove_column(:analytics_cycle_analytics_aggregations, :last_full_run_processed_records)5920main: -> 0.0009s5921main: -- remove_column(:analytics_cycle_analytics_aggregations, :last_full_run_runtimes_in_seconds)5922main: -> 0.0009s5923main: -- remove_column(:analytics_cycle_analytics_aggregations, :last_full_run_issues_updated_at)5924main: -> 0.0006s5925main: -- remove_column(:analytics_cycle_analytics_aggregations, :last_full_run_mrs_updated_at)5926main: -> 0.0007s5927main: -- remove_column(:analytics_cycle_analytics_aggregations, :last_full_run_issues_id)5928main: -> 0.0006s5929main: -- remove_column(:analytics_cycle_analytics_aggregations, :last_full_run_merge_requests_id)5930main: -> 0.0007s5931main: == 20220916112841 RemoveUnusedAggregationColumns: migrated (0.0072s) ==========5932main: == 20220918124223 AddSuggestedReviewersEnabledToProjectSettings: migrating ====5933main: -- add_column(:project_settings, :suggested_reviewers_enabled, :boolean, {:default=>false, :null=>false})5934main: -> 0.0014s5935main: == 20220918124223 AddSuggestedReviewersEnabledToProjectSettings: migrated (0.0016s) 5936main: == 20220919023208 DropUnusedFieldsFromMergeRequestAssignees: migrating ========5937main: -- transaction_open?()5938main: -> 0.0000s5939main: -- column_exists?(:merge_request_assignees, :state)5940main: -> 0.0022s5941main: -- remove_column(:merge_request_assignees, :state)5942main: -> 0.0009s5943main: -- column_exists?(:merge_request_assignees, :updated_state_by_user_id)5944main: -> 0.0017s5945main: -- remove_column(:merge_request_assignees, :updated_state_by_user_id)5946main: -> 0.0013s5947main: == 20220919023208 DropUnusedFieldsFromMergeRequestAssignees: migrated (0.0089s) 5948main: == 20220919041604 DropUnusedFieldsFromMergeRequestReviewers: migrating ========5949main: -- transaction_open?()5950main: -> 0.0000s5951main: -- column_exists?(:merge_request_reviewers, :updated_state_by_user_id)5952main: -> 0.0021s5953main: -- remove_column(:merge_request_reviewers, :updated_state_by_user_id)5954main: -> 0.0013s5955main: == 20220919041604 DropUnusedFieldsFromMergeRequestReviewers: migrated (0.0063s) 5956main: == 20220919050555 DropTmpIndexUserCalloutsOnAttentionRequestFeatureNames: migrating 5957main: -- transaction_open?()5958main: -> 0.0000s5959main: -- view_exists?(:postgres_partitions)5960main: -> 0.0011s5961main: -- indexes(:user_callouts)5962main: -> 0.0035s5963main: -- remove_index(:user_callouts, {:algorithm=>:concurrently, :name=>"tmp_index_user_callouts_on_attention_request_feature_names"})5964main: -> 0.0011s5965main: == 20220919050555 DropTmpIndexUserCalloutsOnAttentionRequestFeatureNames: migrated (0.0130s) 5966main: == 20220919062640 AddMirrorBranchRegexToRemoteMirrors: migrating ==============5967main: -- add_column(:remote_mirrors, :mirror_branch_regex, :text)5968main: -> 0.0010s5969main: -- transaction_open?()5970main: -> 0.0000s5971main: -- current_schema()5972main: -> 0.0005s5973main: -- transaction_open?()5974main: -> 0.0000s5975main: -- execute("ALTER TABLE remote_mirrors\nADD CONSTRAINT check_aa6b497785\nCHECK ( char_length(mirror_branch_regex) <= 255 )\nNOT VALID;\n")5976main: -> 0.0008s5977main: -- current_schema()5978main: -> 0.0005s5979main: -- execute("ALTER TABLE remote_mirrors VALIDATE CONSTRAINT check_aa6b497785;")5980main: -> 0.0007s5981main: == 20220919062640 AddMirrorBranchRegexToRemoteMirrors: migrated (0.0093s) =====5982main: == 20220919080303 DeleteMigrateSharedVulnerabilityScanners: migrating =========5983main: == 20220919080303 DeleteMigrateSharedVulnerabilityScanners: migrated (0.0025s) 5984main: == 20220919080304 RescheduleMigrateSharedVulnerabilityScanners: migrating =====5985main: == 20220919080304 RescheduleMigrateSharedVulnerabilityScanners: migrated (0.0302s) 5986main: == 20220919225631 AddIndexPackagesPackagesOnProjectIdAndLowerVersionToPackages: migrating 5987main: -- transaction_open?()5988main: -> 0.0000s5989main: -- view_exists?(:postgres_partitions)5990main: -> 0.0010s5991main: -- index_exists?(:packages_packages, "project_id, LOWER(version)", {:name=>"index_packages_packages_on_project_id_and_lower_version", :where=>"package_type = 4", :algorithm=>:concurrently})5992main: -> 0.0123s5993main: -- add_index(:packages_packages, "project_id, LOWER(version)", {:name=>"index_packages_packages_on_project_id_and_lower_version", :where=>"package_type = 4", :algorithm=>:concurrently})5994main: -> 0.0014s5995main: == 20220919225631 AddIndexPackagesPackagesOnProjectIdAndLowerVersionToPackages: migrated (0.0217s) 5996main: == 20220920022404 RemoveTempIndexNullProjectNamespaceId: migrating ============5997main: -- transaction_open?()5998main: -> 0.0000s5999main: -- view_exists?(:postgres_partitions)6000main: -> 0.0009s6001main: -- indexes(:projects)6002main: -> 0.0346s6003main: -- remove_index(:projects, {:algorithm=>:concurrently, :name=>"tmp_index_for_null_project_namespace_id"})6004main: -> 0.0015s6005main: == 20220920022404 RemoveTempIndexNullProjectNamespaceId: migrated (0.0434s) ===6006main: == 20220920081631 PrepareCiBuildsMetadataForPartitioningPrimaryKey: migrating =6007main: -- transaction_open?()6008main: -> 0.0000s6009main: -- execute("ALTER TABLE ci_builds_metadata DROP CONSTRAINT ci_builds_metadata_pkey CASCADE")6010main: -> 0.0008s6011main: -- rename_index("ci_builds_metadata", "index_ci_builds_metadata_on_id_partition_id_unique", "ci_builds_metadata_pkey")6012main: -> 0.0008s6013main: -- execute("ALTER TABLE ci_builds_metadata ADD CONSTRAINT ci_builds_metadata_pkey PRIMARY KEY USING INDEX ci_builds_metadata_pkey")6014main: -> 0.0008s6015main: == 20220920081631 PrepareCiBuildsMetadataForPartitioningPrimaryKey: migrated (0.0053s) 6016main: == 20220920122121 ScheduleIndexRemovalForCiBuildsMetadata: migrating ==========6017main: -- index_exists?(:ci_builds_metadata, :build_id, {:name=>:index_ci_builds_metadata_on_build_id})6018main: -> 0.0049s6019main: -- quote_column_name(:index_ci_builds_metadata_on_build_id)6020main: -> 0.0000s6021main: == 20220920122121 ScheduleIndexRemovalForCiBuildsMetadata: migrated (0.0096s) =6022main: == 20220920124709 BackfillInternalOnNotes: migrating ==========================6023main: == 20220920124709 BackfillInternalOnNotes: migrated (0.0258s) =================6024main: == 20220920135356 TiebreakUserTypeIndex: migrating ============================6025main: -- transaction_open?()6026main: -> 0.0000s6027main: -- view_exists?(:postgres_partitions)6028main: -> 0.0009s6029main: -- index_exists?(:users, [:user_type, :id], {:name=>"index_users_on_user_type_and_id", :algorithm=>:concurrently})6030main: -> 0.0186s6031main: -- add_index(:users, [:user_type, :id], {:name=>"index_users_on_user_type_and_id", :algorithm=>:concurrently})6032main: -> 0.0019s6033main: -- transaction_open?()6034main: -> 0.0000s6035main: -- view_exists?(:postgres_partitions)6036main: -> 0.0010s6037main: -- indexes(:users)6038main: -> 0.0186s6039main: -- remove_index(:users, {:algorithm=>:concurrently, :name=>"index_users_on_user_type"})6040main: -> 0.0013s6041main: == 20220920135356 TiebreakUserTypeIndex: migrated (0.0557s) ===================6042main: == 20220920135632 AddJiraConnectProxyUrlSetting: migrating ====================6043main: -- add_column(:application_settings, :jira_connect_proxy_url, :text)6044main: -> 0.0017s6045main: == 20220920135632 AddJiraConnectProxyUrlSetting: migrated (0.0020s) ===========6046main: == 20220920135717 AddTextlimitToJiraConnectProxyUrlSetting: migrating =========6047main: -- transaction_open?()6048main: -> 0.0000s6049main: -- current_schema()6050main: -> 0.0005s6051main: -- transaction_open?()6052main: -> 0.0000s6053main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_4847426287\nCHECK ( char_length(jira_connect_proxy_url) <= 255 )\nNOT VALID;\n")6054main: -> 0.0016s6055main: -- current_schema()6056main: -> 0.0004s6057main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_4847426287;")6058main: -> 0.0012s6059main: == 20220920135717 AddTextlimitToJiraConnectProxyUrlSetting: migrated (0.0100s) 6060main: == 20220920141001 AddIndexOnInternalNotes: migrating ==========================6061main: -- transaction_open?()6062main: -> 0.0000s6063main: -- view_exists?(:postgres_partitions)6064main: -> 0.0010s6065main: -- index_exists?(:notes, :id, {:where=>"internal = true", :name=>"index_notes_on_id_where_internal", :algorithm=>:concurrently})6066main: -> 0.0087s6067main: -- add_index(:notes, :id, {:where=>"internal = true", :name=>"index_notes_on_id_where_internal", :algorithm=>:concurrently})6068main: -> 0.0016s6069main: == 20220920141001 AddIndexOnInternalNotes: migrated (0.0203s) =================6070main: == 20220920213504 FinalizeTaskSystemNoteRenaming: migrating ===================6071main: == 20220920213504 FinalizeTaskSystemNoteRenaming: migrated (0.0001s) ==========6072main: == 20220920214524 RemoveTaskSystemNoteRenameTempIndex: migrating ==============6073main: == 20220920214524 RemoveTaskSystemNoteRenameTempIndex: migrated (0.0001s) =====6074main: == 20220921093355 ScheduleBackfillNamespaceDetails: migrating =================6075main: == 20220921093355 ScheduleBackfillNamespaceDetails: migrated (0.0287s) ========6076main: == 20220921111823 RemoveAndAddCiPipelineVariablesRawWithNewDefault: migrating =6077main: -- remove_column(:ci_pipeline_variables, :raw, :boolean, {:null=>false, :default=>true})6078main: -> 0.0011s6079main: -- add_column(:ci_pipeline_variables, :raw, :boolean, {:null=>false, :default=>false})6080main: -> 0.0016s6081main: == 20220921111823 RemoveAndAddCiPipelineVariablesRawWithNewDefault: migrated (0.0028s) 6082main: == 20220921111831 RemoveAndAddCiGroupVariablesRawWithNewDefault: migrating ====6083main: -- remove_column(:ci_group_variables, :raw, :boolean, {:null=>false, :default=>true})6084main: -> 0.0008s6085main: -- add_column(:ci_group_variables, :raw, :boolean, {:null=>false, :default=>false})6086main: -> 0.0012s6087main: == 20220921111831 RemoveAndAddCiGroupVariablesRawWithNewDefault: migrated (0.0023s) 6088main: == 20220921111840 RemoveAndAddCiInstanceVariablesRawWithNewDefault: migrating =6089main: -- remove_column(:ci_instance_variables, :raw, :boolean, {:null=>false, :default=>true})6090main: -> 0.0008s6091main: -- add_column(:ci_instance_variables, :raw, :boolean, {:null=>false, :default=>false})6092main: -> 0.0012s6093main: == 20220921111840 RemoveAndAddCiInstanceVariablesRawWithNewDefault: migrated (0.0021s) 6094main: == 20220921111849 RemoveAndAddCiJobVariablesRawWithNewDefault: migrating ======6095main: -- remove_column(:ci_job_variables, :raw, :boolean, {:null=>false, :default=>true})6096main: -> 0.0008s6097main: -- add_column(:ci_job_variables, :raw, :boolean, {:null=>false, :default=>false})6098main: -> 0.0012s6099main: == 20220921111849 RemoveAndAddCiJobVariablesRawWithNewDefault: migrated (0.0023s) 6100main: == 20220921111857 RemoveAndAddCiPipelineScheduleVariablesRawWithNewDefault: migrating 6101main: -- remove_column(:ci_pipeline_schedule_variables, :raw, :boolean, {:null=>false, :default=>true})6102main: -> 0.0007s6103main: -- add_column(:ci_pipeline_schedule_variables, :raw, :boolean, {:null=>false, :default=>false})6104main: -> 0.0011s6105main: == 20220921111857 RemoveAndAddCiPipelineScheduleVariablesRawWithNewDefault: migrated (0.0021s) 6106main: == 20220921111907 RemoveAndAddCiVariablesRawWithNewDefault: migrating =========6107main: -- remove_column(:ci_variables, :raw, :boolean, {:null=>false, :default=>true})6108main: -> 0.0008s6109main: -- add_column(:ci_variables, :raw, :boolean, {:null=>false, :default=>false})6110main: -> 0.0011s6111main: == 20220921111907 RemoveAndAddCiVariablesRawWithNewDefault: migrated (0.0021s) 6112main: == 20220921144258 RemoveOrphanGroupTokenUsers: migrating ======================6113main: == 20220921144258 RemoveOrphanGroupTokenUsers: migrated (0.0043s) =============6114main: == 20220921174815 AddSecureFilesMetadata: migrating ===========================6115main: -- add_column(:ci_secure_files, :metadata, :jsonb)6116main: -> 0.0012s6117main: -- add_column(:ci_secure_files, :expires_at, :datetime_with_timezone)6118main: -> 0.0007s6119main: == 20220921174815 AddSecureFilesMetadata: migrated (0.0021s) ==================6120main: == 20220921201347 AddMavenPackageRequestsForwardingToNamespacePackageSettings: migrating 6121main: -- add_column(:namespace_package_settings, :maven_package_requests_forwarding, :boolean, {:null=>true, :default=>nil})6122main: -> 0.0018s6123main: -- add_column(:namespace_package_settings, :lock_maven_package_requests_forwarding, :boolean, {:default=>false, :null=>false})6124main: -> 0.0012s6125main: -- add_column(:application_settings, :lock_maven_package_requests_forwarding, :boolean, {:default=>false, :null=>false})6126main: -> 0.0021s6127main: == 20220921201347 AddMavenPackageRequestsForwardingToNamespacePackageSettings: migrated (0.0053s) 6128main: == 20220922090236 RemoveTraceColumnFromCiBuilds: migrating ====================6129main: -- remove_column(:ci_builds, :trace, :text)6130main: -> 0.0008s6131main: == 20220922090236 RemoveTraceColumnFromCiBuilds: migrated (0.0010s) ===========6132main: == 20220922143143 ScheduleResetDuplicateCiRunnersTokenValues: migrating =======6133main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].6134main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared, :gitlab_internal, :gitlab_pm].6135main: == 20220922143143 ScheduleResetDuplicateCiRunnersTokenValues: migrated (0.0003s) 6136main: == 20220922143612 AddInboundCiJobTokenProjectScopeLinks: migrating ============6137main: -- add_column(:ci_job_token_project_scope_links, :direction, :integer, {:limit=>2, :default=>0, :null=>false})6138main: -> 0.0013s6139main: == 20220922143612 AddInboundCiJobTokenProjectScopeLinks: migrated (0.0015s) ===6140main: == 20220922143634 ScheduleResetDuplicateCiRunnersTokenEncryptedValues: migrating 6141main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].6142main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared, :gitlab_internal, :gitlab_pm].6143main: == 20220922143634 ScheduleResetDuplicateCiRunnersTokenEncryptedValues: migrated (0.0002s) 6144main: == 20220922204106 RemoveIndexForRequestedNonInvitedAwaitingMembers: migrating =6145main: -- transaction_open?()6146main: -> 0.0000s6147main: -- view_exists?(:postgres_partitions)6148main: -> 0.0011s6149main: -- indexes(:members)6150main: -> 0.0115s6151main: -- remove_index(:members, {:algorithm=>:concurrently, :name=>"index_members_on_non_requested_non_invited_and_state_awaiting"})6152main: -> 0.0013s6153main: == 20220922204106 RemoveIndexForRequestedNonInvitedAwaitingMembers: migrated (0.0207s) 6154main: == 20220923052531 RemoveTmpIndexMergeRequestReviewersOnAttentionRequestedState: migrating 6155main: -- transaction_open?()6156main: -> 0.0000s6157main: -- view_exists?(:postgres_partitions)6158main: -> 0.0010s6159main: -- indexes(:merge_request_reviewers)6160main: -> 0.0041s6161main: -- remove_index(:merge_request_reviewers, {:algorithm=>:concurrently, :name=>"tmp_index_merge_request_reviewers_on_attention_requested_state"})6162main: -> 0.0011s6163main: == 20220923052531 RemoveTmpIndexMergeRequestReviewersOnAttentionRequestedState: migrated (0.0121s) 6164main: == 20220923060226 RemoveTmpIndexSystemNoteMetadataOnAttentionRequestActions: migrating 6165main: -- transaction_open?()6166main: -> 0.0000s6167main: -- view_exists?(:postgres_partitions)6168main: -> 0.0010s6169main: -- indexes(:system_note_metadata)6170main: -> 0.0041s6171main: -- remove_index(:system_note_metadata, {:algorithm=>:concurrently, :name=>"tmp_index_system_note_metadata_on_attention_request_actions"})6172main: -> 0.0012s6173main: == 20220923060226 RemoveTmpIndexSystemNoteMetadataOnAttentionRequestActions: migrated (0.0124s) 6174main: == 20220923103006 AddCiPipelineMetadataTitle: migrating =======================6175main: -- create_table(:ci_pipeline_metadata, {:id=>false})6176main: -- quote_column_name(:title)6177main: -> 0.0000s6178main: -> 0.0042s6179main: == 20220923103006 AddCiPipelineMetadataTitle: migrated (0.0045s) ==============6180main: == 20220926023734 AddMirrorBranchRegexToProjectSettings: migrating ============6181main: -- add_column(:project_settings, :mirror_branch_regex, :text)6182main: -> 0.0010s6183main: == 20220926023734 AddMirrorBranchRegexToProjectSettings: migrated (0.0012s) ===6184main: == 20220927155407 AddColumnInboundJobTokenScopeEnabledToCiCdSetting: migrating 6185main: -- add_column(:project_ci_cd_settings, :inbound_job_token_scope_enabled, :boolean, {:default=>false, :null=>false})6186main: -> 0.0014s6187main: == 20220927155407 AddColumnInboundJobTokenScopeEnabledToCiCdSetting: migrated (0.0016s) 6188main: == 20220927171740 PrepareForVulnerabilityOccurrencesUuidTypeTransition: migrating 6189main: -- table_exists?(:vulnerability_occurrences)6190main: -> 0.0011s6191main: -- column_exists?(:vulnerability_occurrences, :id)6192main: -> 0.0025s6193main: -- column_exists?(:vulnerability_occurrences, :uuid)6194main: -> 0.0021s6195main: -- transaction_open?()6196main: -> 0.0000s6197main: -- columns(:vulnerability_occurrences)6198main: -> 0.0021s6199main: -- add_column(:vulnerability_occurrences, "uuid_convert_string_to_uuid", :uuid, {:default=>"00000000-0000-0000-0000-000000000000", :null=>false})6200main: -> 0.0015s6201main: == 20220927171740 PrepareForVulnerabilityOccurrencesUuidTypeTransition: migrated (0.0127s) 6202main: == 20220928201920 CreateProjectWikiRepositoryStates: migrating ================6203main: -- create_table(:project_wiki_repository_states, {:id=>false})6204main: -- quote_column_name(:verification_failure)6205main: -> 0.0000s6206main: -> 0.0068s6207main: == 20220928201920 CreateProjectWikiRepositoryStates: migrated (0.0069s) =======6208main: == 20220928225711 ScheduleUpdateCiPipelineArtifactsLockedStatus: migrating ====6209main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].6210main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared, :gitlab_internal, :gitlab_pm].6211main: == 20220928225711 ScheduleUpdateCiPipelineArtifactsLockedStatus: migrated (0.0002s) 6212main: == 20220929081645 TmpIdxNullMemberNamespaceId: migrating ======================6213main: -- transaction_open?()6214main: -> 0.0000s6215main: -- view_exists?(:postgres_partitions)6216main: -> 0.0010s6217main: -- index_exists?(:members, :member_namespace_id, {:name=>"tmp_index_for_null_member_namespace_id", :where=>"member_namespace_id IS NULL", :algorithm=>:concurrently})6218main: -> 0.0114s6219main: -- add_index(:members, :member_namespace_id, {:name=>"tmp_index_for_null_member_namespace_id", :where=>"member_namespace_id IS NULL", :algorithm=>:concurrently})6220main: -> 0.0015s6221main: == 20220929081645 TmpIdxNullMemberNamespaceId: migrated (0.0211s) =============6222main: == 20220929091500 AddTmpIndexVulnsOnReportType: migrating =====================6223main: -- transaction_open?()6224main: -> 0.0000s6225main: -- view_exists?(:postgres_partitions)6226main: -> 0.0013s6227main: -- index_exists?(:vulnerabilities, :id, {:where=>"report_type IN (7, 99)", :name=>"tmp_idx_vulnerabilities_on_id_where_report_type_7_99", :algorithm=>:concurrently})6228main: -> 0.0124s6229main: -- add_index(:vulnerabilities, :id, {:where=>"report_type IN (7, 99)", :name=>"tmp_idx_vulnerabilities_on_id_where_report_type_7_99", :algorithm=>:concurrently})6230main: -> 0.0015s6231main: == 20220929091500 AddTmpIndexVulnsOnReportType: migrated (0.0217s) ============6232main: == 20220929101947 DeleteRemoveInvalidMemberMigration: migrating ===============6233main: == 20220929101947 DeleteRemoveInvalidMemberMigration: migrated (0.0098s) ======6234main: == 20220929171925 AddPypiPackageRequestsForwardingToNamespacePackageSettings: migrating 6235main: -- add_column(:namespace_package_settings, :pypi_package_requests_forwarding, :boolean, {:null=>true, :default=>nil})6236main: -> 0.0017s6237main: -- add_column(:namespace_package_settings, :lock_pypi_package_requests_forwarding, :boolean, {:default=>false, :null=>false})6238main: -> 0.0012s6239main: -- add_column(:application_settings, :lock_pypi_package_requests_forwarding, :boolean, {:default=>false, :null=>false})6240main: -> 0.0021s6241main: == 20220929171925 AddPypiPackageRequestsForwardingToNamespacePackageSettings: migrated (0.0053s) 6242main: == 20220929172356 AddNpmPackageRequestsForwardingToNamespacePackageSettings: migrating 6243main: -- add_column(:namespace_package_settings, :npm_package_requests_forwarding, :boolean, {:null=>true, :default=>nil})6244main: -> 0.0018s6245main: -- add_column(:namespace_package_settings, :lock_npm_package_requests_forwarding, :boolean, {:default=>false, :null=>false})6246main: -> 0.0011s6247main: -- add_column(:application_settings, :lock_npm_package_requests_forwarding, :boolean, {:default=>false, :null=>false})6248main: -> 0.0019s6249main: == 20220929172356 AddNpmPackageRequestsForwardingToNamespacePackageSettings: migrated (0.0051s) 6250main: == 20220929194453 AddIndexReleasesProjectIdId: migrating ======================6251main: -- transaction_open?()6252main: -> 0.0000s6253main: -- view_exists?(:postgres_partitions)6254main: -> 0.0010s6255main: -- index_exists?(:releases, [:project_id, :id], {:name=>"index_releases_on_project_id_id", :algorithm=>:concurrently})6256main: -> 0.0046s6257main: -- add_index(:releases, [:project_id, :id], {:name=>"index_releases_on_project_id_id", :algorithm=>:concurrently})6258main: -> 0.0013s6259main: == 20220929194453 AddIndexReleasesProjectIdId: migrated (0.0139s) =============6260main: == 20220929213730 ScheduleDeleteOrphanedOperationalVulnerabilities: migrating =6261main: == 20220929213730 ScheduleDeleteOrphanedOperationalVulnerabilities: migrated (0.0277s) 6262main: == 20220930110127 RemoveUniqueIndexBuildIdToCiBuildsMetadata: migrating =======6263main: -- transaction_open?()6264main: -> 0.0000s6265main: -- view_exists?(:postgres_partitions)6266main: -> 0.0009s6267main: -- indexes(:ci_builds_metadata)6268main: -> 0.0048s6269main: -- remove_index(:ci_builds_metadata, {:algorithm=>:concurrently, :name=>:index_ci_builds_metadata_on_build_id})6270main: -> 0.0011s6271main: == 20220930110127 RemoveUniqueIndexBuildIdToCiBuildsMetadata: migrated (0.0146s) 6272main: == 20220930125609 AddMigratedToStateTransitionToVulnerabilityFeedback: migrating 6273main: -- add_column(:vulnerability_feedback, :migrated_to_state_transition, :boolean, {:default=>false})6274main: -> 0.0017s6275main: == 20220930125609 AddMigratedToStateTransitionToVulnerabilityFeedback: migrated (0.0019s) 6276main: == 20221002234454 FinalizeGroupMemberNamespaceIdMigration: migrating ==========6277main: == 20221002234454 FinalizeGroupMemberNamespaceIdMigration: migrated (0.0362s) =6278main: == 20221003151747 CreateAuditEventsStreamingEventTypeFilters: migrating =======6279main: -- create_table(:audit_events_streaming_event_type_filters, {})6280main: -- quote_column_name(:audit_event_type)6281main: -> 0.0000s6282main: -> 0.0043s6283main: == 20221003151747 CreateAuditEventsStreamingEventTypeFilters: migrated (0.0045s) 6284main: == 20221003192827 AddIndexResolvedOnDefaultBranchToVulnerabilitiesRead: migrating 6285main: -- transaction_open?()6286main: -> 0.0000s6287main: -- view_exists?(:postgres_partitions)6288main: -> 0.0011s6289main: -- index_exists?(:vulnerability_reads, [:project_id, :state, :id], {:where=>"resolved_on_default_branch IS TRUE", :name=>"index_vuln_reads_on_resolved_on_default_branch", :algorithm=>:concurrently})6290main: -> 0.0099s6291main: -- add_index(:vulnerability_reads, [:project_id, :state, :id], {:where=>"resolved_on_default_branch IS TRUE", :name=>"index_vuln_reads_on_resolved_on_default_branch", :algorithm=>:concurrently})6292main: -> 0.0016s6293main: == 20221003192827 AddIndexResolvedOnDefaultBranchToVulnerabilitiesRead: migrated (0.0199s) 6294main: == 20221004074910 RoutingTablePrepareConstraintForBuildsMetadata: migrating ===6295main: -- transaction_open?()6296main: -> 0.0000s6297main: -- transaction_open?()6298main: -> 0.0000s6299main: -- current_schema()6300main: -> 0.0005s6301main: -- execute("ALTER TABLE ci_builds_metadata\nADD CONSTRAINT partitioning_constraint\nCHECK ( partition_id = 100 )\nNOT VALID;\n")6302main: -> 0.0010s6303main: -- current_schema()6304main: -> 0.0005s6305main: -- execute("ALTER TABLE ci_builds_metadata VALIDATE CONSTRAINT partitioning_constraint;")6306main: -> 0.0007s6307main: == 20221004074910 RoutingTablePrepareConstraintForBuildsMetadata: migrated (0.0423s) 6308main: == 20221004074914 CreateRoutingTableForBuildsMetadata: migrating ==============6309main: == 20221004074914 CreateRoutingTableForBuildsMetadata: migrated (0.0002s) =====6310main: == 20221004092038 TmpIndexMembersOnIdWhereNamespaceIdNull: migrating ==========6311main: -- transaction_open?()6312main: -> 0.0000s6313main: -- view_exists?(:postgres_partitions)6314main: -> 0.0011s6315main: -- index_exists?(:members, :id, {:name=>"tmp_index_members_on_id_where_namespace_id_null", :where=>"member_namespace_id IS NULL", :algorithm=>:concurrently})6316main: -> 0.0118s6317main: -- add_index(:members, :id, {:name=>"tmp_index_members_on_id_where_namespace_id_null", :where=>"member_namespace_id IS NULL", :algorithm=>:concurrently})6318main: -> 0.0015s6319main: == 20221004092038 TmpIndexMembersOnIdWhereNamespaceIdNull: migrated (0.0219s) =6320main: == 20221004094814 ScheduleDestroyInvalidMembers: migrating ====================6321main: == 20221004094814 ScheduleDestroyInvalidMembers: migrated (0.0266s) ===========6322main: == 20221005072353 CreateIncidentManagementTimelineEventTags: migrating ========6323main: -- create_table(:incident_management_timeline_event_tags, {})6324main: -- quote_column_name(:name)6325main: -> 0.0000s6326main: -> 0.0047s6327main: == 20221005072353 CreateIncidentManagementTimelineEventTags: migrated (0.0049s) 6328main: == 20221005094926 CreateIncidentManagementTimelineEventTagLinks: migrating ====6329main: -- create_table(:incident_management_timeline_event_tag_links, {})6330main: -> 0.0039s6331main: == 20221005094926 CreateIncidentManagementTimelineEventTagLinks: migrated (0.0041s) 6332main: == 20221005103000 AddIndexMergeRequestIdOnScanFindingApprovalMergeRequestRules: migrating 6333main: -- transaction_open?()6334main: -> 0.0001s6335main: -- view_exists?(:postgres_partitions)6336main: -> 0.0011s6337main: -- index_exists?(:approval_merge_request_rules, :merge_request_id, {:where=>"report_type = 4", :name=>"scan_finding_approval_mr_rule_index_merge_request_id", :algorithm=>:concurrently})6338main: -> 0.0064s6339main: -- add_index(:approval_merge_request_rules, :merge_request_id, {:where=>"report_type = 4", :name=>"scan_finding_approval_mr_rule_index_merge_request_id", :algorithm=>:concurrently})6340main: -> 0.0015s6341main: == 20221005103000 AddIndexMergeRequestIdOnScanFindingApprovalMergeRequestRules: migrated (0.0158s) 6342main: == 20221005103010 AddIndexProjectIdOnScanFindingApprovalProjectRules: migrating 6343main: -- transaction_open?()6344main: -> 0.0000s6345main: -- view_exists?(:postgres_partitions)6346main: -> 0.0009s6347main: -- index_exists?(:approval_project_rules, [:created_at, :project_id], {:where=>"report_type = 4", :name=>"scan_finding_approval_project_rule_index_created_at_project_id", :algorithm=>:concurrently})6348main: -> 0.0050s6349main: -- add_index(:approval_project_rules, [:created_at, :project_id], {:where=>"report_type = 4", :name=>"scan_finding_approval_project_rule_index_created_at_project_id", :algorithm=>:concurrently})6350main: -> 0.0014s6351main: -- transaction_open?()6352main: -> 0.0000s6353main: -- view_exists?(:postgres_partitions)6354main: -> 0.0008s6355main: -- index_exists?(:approval_project_rules, :project_id, {:where=>"report_type = 4", :name=>"scan_finding_approval_project_rule_index_project_id", :algorithm=>:concurrently})6356main: -> 0.0055s6357main: -- add_index(:approval_project_rules, :project_id, {:where=>"report_type = 4", :name=>"scan_finding_approval_project_rule_index_project_id", :algorithm=>:concurrently})6358main: -> 0.0012s6359main: == 20221005103010 AddIndexProjectIdOnScanFindingApprovalProjectRules: migrated (0.0273s) 6360main: == 20221006070927 FinalizeInvalidMemberCleanup: migrating =====================6361main: == 20221006070927 FinalizeInvalidMemberCleanup: migrated (0.0147s) ============6362main: == 20221006083240 PreparePartialTrigramIndexesForIssuesAttempt2: migrating ====6363main: -- index_exists?(:issues, :title, {:name=>"index_issues_on_title_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})6364main: -> 0.0227s6365main: -- add_index_options(:issues, :title, {:name=>"index_issues_on_title_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})6366main: -> 0.0000s6367main: -- index_exists?(:issues, :description, {:name=>"index_issues_on_description_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})6368main: -> 0.0213s6369main: -- add_index_options(:issues, :description, {:name=>"index_issues_on_description_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})6370main: -> 0.0001s6371main: == 20221006083240 PreparePartialTrigramIndexesForIssuesAttempt2: migrated (0.0545s) 6372main: == 20221006131506 AddFreeUserCapOverLimitNotifiedAtToNamespaceDetails: migrating 6373main: -- transaction_open?()6374main: -> 0.0000s6375main: -- add_column("namespace_details", "free_user_cap_over_limit_notified_at", :datetime_with_timezone)6376main: -> 0.0008s6377main: == 20221006131506 AddFreeUserCapOverLimitNotifiedAtToNamespaceDetails: migrated (0.0033s) 6378main: == 20221006141145 AddTargetsToElasticReindexingTasks: migrating ===============6379main: -- add_column(:elastic_reindexing_tasks, :targets, :text, {:array=>true})6380main: -> 0.0014s6381main: == 20221006141145 AddTargetsToElasticReindexingTasks: migrated (0.0016s) ======6382main: == 20221006172302 AdjustTaskNoteRenameBackgroundMigrationValues: migrating ====6383main: == 20221006172302 AdjustTaskNoteRenameBackgroundMigrationValues: migrated (0.0219s) 6384main: == 20221008032350 AddPasswordExpirationMigration: migrating ===================6385main: -- add_column(:application_settings, :password_expiration_enabled, :boolean, {:default=>false, :null=>false, :comment=>"JiHu-specific column"})6386main: -> 0.0032s6387main: -- add_column(:application_settings, :password_expires_in_days, :integer, {:default=>90, :null=>false, :comment=>"JiHu-specific column"})6388main: -> 0.0022s6389main: -- add_column(:application_settings, :password_expires_notice_before_days, :integer, {:default=>7, :null=>false, :comment=>"JiHu-specific column"})6390main: -> 0.0020s6391main: == 20221008032350 AddPasswordExpirationMigration: migrated (0.0077s) ==========6392main: == 20221009085130 AddMrChecksColumnsToNamespaceSettings: migrating ============6393main: -- add_column(:namespace_settings, :only_allow_merge_if_pipeline_succeeds, :boolean, {:default=>false, :null=>false})6394main: -> 0.0017s6395main: -- add_column(:namespace_settings, :allow_merge_on_skipped_pipeline, :boolean, {:default=>false, :null=>false})6396main: -> 0.0011s6397main: -- add_column(:namespace_settings, :only_allow_merge_if_all_discussions_are_resolved, :boolean, {:default=>false, :null=>false})6398main: -> 0.0011s6399main: == 20221009085130 AddMrChecksColumnsToNamespaceSettings: migrated (0.0042s) ===6400main: == 20221010074914 MigrateSecurityFindingsDeleteQueues: migrating ==============6401main: == 20221010074914 MigrateSecurityFindingsDeleteQueues: migrated (0.0006s) =====6402main: == 20221010103207 AddProductAnalyticsEnabledToApplicationSettings: migrating ==6403main: -- add_column(:application_settings, :product_analytics_enabled, :boolean, {:default=>false, :null=>false})6404main: -> 0.0023s6405main: == 20221010103207 AddProductAnalyticsEnabledToApplicationSettings: migrated (0.0025s) 6406main: == 20221010121510 PrepareAsyncIndexAuthorIdTargetProjectIdOnMergeRequests: migrating 6407main: -- index_exists?(:merge_requests, [:author_id, :target_project_id], {:name=>"index_merge_requests_on_author_id_and_target_project_id", :algorithm=>:concurrently})6408main: -> 0.0225s6409main: -- add_index_options(:merge_requests, [:author_id, :target_project_id], {:name=>"index_merge_requests_on_author_id_and_target_project_id", :algorithm=>:concurrently})6410main: -> 0.0001s6411main: == 20221010121510 PrepareAsyncIndexAuthorIdTargetProjectIdOnMergeRequests: migrated (0.0289s) 6412main: == 20221010121807 AddComplianceFrameworkIdToNamespaceSettings: migrating ======6413main: -- add_column(:namespace_settings, :default_compliance_framework_id, :bigint)6414main: -> 0.0014s6415main: == 20221010121807 AddComplianceFrameworkIdToNamespaceSettings: migrated (0.0015s) 6416main: == 20221010122138 AddAsyncIndexAuthorIdTargetProjectIdOnMergeRequests: migrating 6417main: -- index_exists?(:merge_requests, [:author_id, :id], {:name=>"index_merge_requests_on_author_id_and_id", :algorithm=>:concurrently})6418main: -> 0.0215s6419main: -- add_index_options(:merge_requests, [:author_id, :id], {:name=>"index_merge_requests_on_author_id_and_id", :algorithm=>:concurrently})6420main: -> 0.0001s6421main: == 20221010122138 AddAsyncIndexAuthorIdTargetProjectIdOnMergeRequests: migrated (0.0274s) 6422main: == 20221010122352 AddIndexToNamespaceSettingsOnDefaultComplianceFrameworkId: migrating 6423main: -- transaction_open?()6424main: -> 0.0000s6425main: -- view_exists?(:postgres_partitions)6426main: -> 0.0009s6427main: -- index_exists?(:namespace_settings, :default_compliance_framework_id, {:unique=>true, :name=>"idx_namespace_settings_on_default_compliance_framework_id", :algorithm=>:concurrently})6428main: -> 0.0014s6429main: -- add_index(:namespace_settings, :default_compliance_framework_id, {:unique=>true, :name=>"idx_namespace_settings_on_default_compliance_framework_id", :algorithm=>:concurrently})6430main: -> 0.0014s6431main: == 20221010122352 AddIndexToNamespaceSettingsOnDefaultComplianceFrameworkId: migrated (0.0102s) 6432main: == 20221010123040 AddComplianceFrameworkFkToNamespaceSettings: migrating ======6433main: -- transaction_open?()6434main: -> 0.0000s6435main: -- foreign_keys(:namespace_settings)6436main: -> 0.0028s6437main: -- transaction_open?()6438main: -> 0.0000s6439main: -- execute("LOCK TABLE compliance_management_frameworks, namespace_settings IN SHARE ROW EXCLUSIVE MODE")6440main: -> 0.0006s6441main: -- execute("ALTER TABLE namespace_settings\nADD CONSTRAINT fk_20cf0eb2f9\nFOREIGN KEY (default_compliance_framework_id)\nREFERENCES compliance_management_frameworks (id)\nON DELETE SET NULL\nNOT VALID;\n")6442main: -> 0.0010s6443main: -- execute("ALTER TABLE namespace_settings VALIDATE CONSTRAINT fk_20cf0eb2f9;")6444main: -> 0.0010s6445main: == 20221010123040 AddComplianceFrameworkFkToNamespaceSettings: migrated (0.0085s) 6446main: == 20221010141500 AddIndexAuthorIdTargetProjectIdOnMergeRequests: migrating ===6447main: -- transaction_open?()6448main: -> 0.0000s6449main: -- view_exists?(:postgres_partitions)6450main: -> 0.0010s6451main: -- index_exists?(:merge_requests, [:author_id, :target_project_id], {:name=>"index_merge_requests_on_author_id_and_target_project_id", :algorithm=>:concurrently})6452main: -> 0.0230s6453main: -- add_index(:merge_requests, [:author_id, :target_project_id], {:name=>"index_merge_requests_on_author_id_and_target_project_id", :algorithm=>:concurrently})6454main: -> 0.0016s6455main: == 20221010141500 AddIndexAuthorIdTargetProjectIdOnMergeRequests: migrated (0.0347s) 6456main: == 20221010162137 AddIndexAuthorIdAndIdOnMergeRequests: migrating =============6457main: -- transaction_open?()6458main: -> 0.0000s6459main: -- view_exists?(:postgres_partitions)6460main: -> 0.0011s6461main: -- index_exists?(:merge_requests, [:author_id, :id], {:name=>"index_merge_requests_on_author_id_and_id", :algorithm=>:concurrently})6462main: -> 0.0248s6463main: -- add_index(:merge_requests, [:author_id, :id], {:name=>"index_merge_requests_on_author_id_and_id", :algorithm=>:concurrently})6464main: -> 0.0016s6465main: == 20221010162137 AddIndexAuthorIdAndIdOnMergeRequests: migrated (0.0374s) ====6466main: == 20221010184839 AddNewAmountUsedToCiProjectMonthlyUsages: migrating =========6467main: -- add_column(:ci_project_monthly_usages, :new_amount_used, :decimal, {:default=>0.0, :precision=>18, :scale=>4, :null=>false, :if_not_exists=>true})6468main: -> 0.0036s6469main: == 20221010184839 AddNewAmountUsedToCiProjectMonthlyUsages: migrated (0.0065s) 6470main: == 20221010201815 AddPurlTypeToSbomComponents: migrating ======================6471main: -- add_column(:sbom_components, :purl_type, :smallint)6472main: -> 0.0014s6473main: == 20221010201815 AddPurlTypeToSbomComponents: migrated (0.0017s) =============6474main: == 20221010202339 RemoveUniqueIndexOnSbomComponentsTypeAndName: migrating =====6475main: -- transaction_open?()6476main: -> 0.0000s6477main: -- view_exists?(:postgres_partitions)6478main: -> 0.0012s6479main: -- indexes(:sbom_components)6480main: -> 0.0026s6481main: -- remove_index(:sbom_components, {:algorithm=>:concurrently, :name=>"index_sbom_components_on_component_type_and_name"})6482main: -> 0.0012s6483main: == 20221010202339 RemoveUniqueIndexOnSbomComponentsTypeAndName: migrated (0.0118s) 6484main: == 20221010202408 AddUniqueIndexOnSbomComponentsTypeNameAndPurlType: migrating 6485main: -- transaction_open?()6486main: -> 0.0000s6487main: -- view_exists?(:postgres_partitions)6488main: -> 0.0011s6489main: -- index_exists?(:sbom_components, [:name, :purl_type, :component_type], {:unique=>true, :name=>"index_sbom_components_on_component_type_name_and_purl_type", :algorithm=>:concurrently})6490main: -> 0.0017s6491main: -- add_index(:sbom_components, [:name, :purl_type, :component_type], {:unique=>true, :name=>"index_sbom_components_on_component_type_name_and_purl_type", :algorithm=>:concurrently})6492main: -> 0.0014s6493main: == 20221010202408 AddUniqueIndexOnSbomComponentsTypeNameAndPurlType: migrated (0.0116s) 6494main: == 20221011062254 SyncNewAmountUsedForCiProjectMonthlyUsages: migrating =======6495main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].6496main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared, :gitlab_internal, :gitlab_pm].6497main: == 20221011062254 SyncNewAmountUsedForCiProjectMonthlyUsages: migrated (0.0002s) 6498main: == 20221011113928 RedoRemoveAndAddCiJobVariablesRawWithNewDefault: migrating ==6499main: -- remove_column(:ci_job_variables, :raw, :boolean, {:null=>false, :default=>false})6500main: -> 0.0009s6501main: -- add_column(:ci_job_variables, :raw, :boolean, {:null=>false, :default=>false})6502main: -> 0.0014s6503main: == 20221011113928 RedoRemoveAndAddCiJobVariablesRawWithNewDefault: migrated (0.0027s) 6504main: == 20221011162637 AddPartialIndexProjectIncidentManagementSettingsOnProjectIdAndSlaTimer: migrating 6505main: -- transaction_open?()6506main: -> 0.0000s6507main: -- view_exists?(:postgres_partitions)6508main: -> 0.0010s6509main: -- index_exists?(:project_incident_management_settings, :project_id, {:name=>"index_project_incident_management_settings_on_p_id_sla_timer", :where=>"sla_timer = TRUE", :algorithm=>:concurrently})6510main: -> 0.0016s6511main: -- add_index(:project_incident_management_settings, :project_id, {:name=>"index_project_incident_management_settings_on_p_id_sla_timer", :where=>"sla_timer = TRUE", :algorithm=>:concurrently})6512main: -> 0.0016s6513main: == 20221011162637 AddPartialIndexProjectIncidentManagementSettingsOnProjectIdAndSlaTimer: migrated (0.0115s) 6514main: == 20221011210455 AddUseLegacyWebIdeToUserPreferences: migrating ==============6515main: -- add_column(:user_preferences, :use_legacy_web_ide, :boolean, {:default=>false, :null=>false})6516main: -> 0.0017s6517main: == 20221011210455 AddUseLegacyWebIdeToUserPreferences: migrated (0.0020s) =====6518main: == 20221012033107 AddPasswordLastChangedAtToUserDetails: migrating ============6519main: -- add_column(:user_details, :password_last_changed_at, :datetime_with_timezone, {:comment=>"JiHu-specific column"})6520main: -> 0.0016s6521main: == 20221012033107 AddPasswordLastChangedAtToUserDetails: migrated (0.0018s) ===6522main: == 20221012135524 AddScanFilePathLimitForDastSiteProfile: migrating ===========6523main: -- transaction_open?()6524main: -> 0.0000s6525main: -- current_schema()6526main: -> 0.0006s6527main: -- transaction_open?()6528main: -> 0.0000s6529main: -- execute("ALTER TABLE dast_site_profiles\nADD CONSTRAINT check_8d2aa0f66d\nCHECK ( char_length(scan_file_path) <= 1024 )\nNOT VALID;\n")6530main: -> 0.0009s6531main: -- current_schema()6532main: -> 0.0005s6533main: -- execute("ALTER TABLE dast_site_profiles VALIDATE CONSTRAINT check_8d2aa0f66d;")6534main: -> 0.0008s6535main: == 20221012135524 AddScanFilePathLimitForDastSiteProfile: migrated (0.0093s) ==6536main: == 20221012182701 RemoveNamespaceSettingsCohortFreeUserCapColumns: migrating ==6537main: -- remove_column(:namespace_settings, :exclude_from_free_user_cap)6538main: -> 0.0010s6539main: -- remove_column(:namespace_settings, :include_for_free_user_cap_preview)6540main: -> 0.0008s6541main: == 20221012182701 RemoveNamespaceSettingsCohortFreeUserCapColumns: migrated (0.0021s) 6542main: == 20221013103738 AddDisableAdminOauthScopes: migrating =======================6543main: -- add_column(:application_settings, :disable_admin_oauth_scopes, :boolean, {:null=>false, :default=>false})6544main: -> 0.0032s6545main: == 20221013103738 AddDisableAdminOauthScopes: migrated (0.0034s) ==============6546main: == 20221013154159 UpdateInvalidDormantUserSetting: migrating ==================6547main: -- execute("update application_settings set deactivate_dormant_users_period=90 where deactivate_dormant_users_period < 90")6548main: -> 0.0017s6549main: == 20221013154159 UpdateInvalidDormantUserSetting: migrated (0.0019s) =========6550main: == 20221013215832 CleanupVulnerabilityStateTransitionsWithSameFromStateToState: migrating 6551main: == 20221013215832 CleanupVulnerabilityStateTransitionsWithSameFromStateToState: migrated (0.0156s) 6552main: == 20221014031033 AddTempIndexToProjectFeaturesWhereReleasesAccessLevelGtRepository: migrating 6553main: -- transaction_open?()6554main: -> 0.0000s6555main: -- view_exists?(:postgres_partitions)6556main: -> 0.0011s6557main: -- index_exists?(:project_features, [:releases_access_level, :repository_access_level], {:name=>"tmp_idx_project_features_on_releases_al_and_repo_al_partial", :where=>"releases_access_level > repository_access_level", :algorithm=>:concurrently})6558main: -> 0.0044s6559main: -- add_index(:project_features, [:releases_access_level, :repository_access_level], {:name=>"tmp_idx_project_features_on_releases_al_and_repo_al_partial", :where=>"releases_access_level > repository_access_level", :algorithm=>:concurrently})6560main: -> 0.0017s6561main: == 20221014031033 AddTempIndexToProjectFeaturesWhereReleasesAccessLevelGtRepository: migrated (0.0151s) 6562main: == 20221014034338 PopulateReleasesAccessLevelFromRepository: migrating ========6563main: -- transaction_open?()6564main: -> 0.0000s6565main: -- exec_query("SELECT COUNT(*) AS count FROM \"project_features\" WHERE \"project_features\".\"releases_access_level\" > \"project_features\".\"repository_access_level\"")6566main: -> 0.0012s6567main: == 20221014034338 PopulateReleasesAccessLevelFromRepository: migrated (0.0019s) 6568main: == 20221014190040 DropNotesNoteTrigramIndex: migrating ========================6569main: -- transaction_open?()6570main: -> 0.0000s6571main: -- view_exists?(:postgres_partitions)6572main: -> 0.0010s6573main: -- indexes(:notes)6574main: -> 0.0104s6575main: -- current_schema()6576main: -> 0.0006s6577main: == 20221014190040 DropNotesNoteTrigramIndex: migrated (0.0182s) ===============6578main: == 20221015000511 AddEmailConfirmationSettingToApplicationSettings: migrating =6579main: -- add_column(:application_settings, :email_confirmation_setting, :integer, {:limit=>2, :default=>2})6580main: -> 0.0033s6581main: == 20221015000511 AddEmailConfirmationSettingToApplicationSettings: migrated (0.0035s) 6582main: == 20221017084208 RenameCiPipelineMetadataTitle: migrating ====================6583main: -- transaction_open?()6584main: -> 0.0000s6585main: -- columns(:ci_pipeline_metadata)6586main: -> 0.0021s6587main: -- column_exists?(:ci_pipeline_metadata, :pipeline_id)6588main: -> 0.0017s6589main: -- column_exists?(:ci_pipeline_metadata, :name)6590main: -> 0.0017s6591main: -- columns(:ci_pipeline_metadata)6592main: -> 0.0016s6593main: -- add_column(:ci_pipeline_metadata, :name, :text, {:limit=>nil, :precision=>nil, :scale=>nil})6594main: -> 0.0010s6595main: -- transaction_open?()6596main: -> 0.0000s6597main: -- exec_query("SELECT COUNT(*) AS count FROM \"ci_pipeline_metadata\"")6598main: -> 0.0009s6599main: -- current_schema()6600main: -> 0.0004s6601main: -- transaction_open?()6602main: -> 0.0000s6603main: -- current_schema()6604main: -> 0.0005s6605main: -- transaction_open?()6606main: -> 0.0000s6607main: -- execute("ALTER TABLE ci_pipeline_metadata\nADD CONSTRAINT check_25d23931f1\nCHECK ( name IS NOT NULL )\nNOT VALID;\n")6608main: -> 0.0010s6609main: -- current_schema()6610main: -> 0.0005s6611main: -- execute("ALTER TABLE ci_pipeline_metadata VALIDATE CONSTRAINT check_25d23931f1;")6612main: -> 0.0008s6613main: -- indexes(:ci_pipeline_metadata)6614main: -> 0.0038s6615main: -- transaction_open?()6616main: -> 0.0000s6617main: -- view_exists?(:postgres_partitions)6618main: -> 0.0012s6619main: -- index_exists?(:ci_pipeline_metadata, ["pipeline_id", "name"], {:unique=>false, :name=>"index_ci_pipeline_metadata_on_pipeline_id_name", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})6620main: -> 0.0036s6621main: -- add_index(:ci_pipeline_metadata, ["pipeline_id", "name"], {:unique=>false, :name=>"index_ci_pipeline_metadata_on_pipeline_id_name", :length=>{}, :order=>{}, :using=>:btree, :algorithm=>:concurrently})6622main: -> 0.0017s6623main: -- foreign_keys(:ci_pipeline_metadata)6624main: -> 0.0031s6625main: -- transaction_open?()6626main: -> 0.0000s6627main: -- column_exists?(:ci_pipeline_metadata, :title)6628main: -> 0.0019s6629main: -- column_exists?(:ci_pipeline_metadata, :name)6630main: -> 0.0019s6631main: -- current_schema()6632main: -> 0.0004s6633main: -- transaction_open?()6634main: -> 0.0000s6635main: -- current_schema()6636main: -> 0.0005s6637main: -- transaction_open?()6638main: -> 0.0000s6639main: -- execute("ALTER TABLE ci_pipeline_metadata\nADD CONSTRAINT check_9d3665463c\nCHECK ( (char_length(name) <= 255) )\nNOT VALID;\n")6640main: -> 0.0010s6641main: -- current_schema()6642main: -> 0.0005s6643main: -- execute("ALTER TABLE ci_pipeline_metadata VALIDATE CONSTRAINT check_9d3665463c;")6644main: -> 0.0009s6645main: -- transaction_open?()6646main: -> 0.0000s6647main: -- quote_table_name(:ci_pipeline_metadata)6648main: -> 0.0000s6649main: -- quote_column_name(:title)6650main: -> 0.0000s6651main: -- quote_column_name(:name)6652main: -> 0.0000s6653main: -- columns(:ci_pipeline_metadata)6654main: -> 0.0019s6655main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_5ea69df84db9()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n IF NEW.\"title\" IS NOT DISTINCT FROM NULL AND NEW.\"name\" IS DISTINCT FROM NULL THEN\n NEW.\"title\" = NEW.\"name\";\n END IF;\n\n IF NEW.\"name\" IS NOT DISTINCT FROM NULL AND NEW.\"title\" IS DISTINCT FROM NULL THEN\n NEW.\"name\" = NEW.\"title\";\n END IF;\n\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_5ea69df84db9\nON \"ci_pipeline_metadata\";\n\nCREATE TRIGGER trigger_5ea69df84db9\nBEFORE INSERT ON \"ci_pipeline_metadata\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_5ea69df84db9();\n")6656main: -> 0.0012s6657main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_4d1e05e0275c()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"title\" := NEW.\"name\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_4d1e05e0275c\nON \"ci_pipeline_metadata\";\n\nCREATE TRIGGER trigger_4d1e05e0275c\nBEFORE UPDATE OF \"name\" ON \"ci_pipeline_metadata\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_4d1e05e0275c();\n")6658main: -> 0.0011s6659main: -- execute("CREATE OR REPLACE FUNCTION function_for_trigger_f292e497df78()\nRETURNS trigger\nLANGUAGE plpgsql\nAS $$\nBEGIN\n NEW.\"name\" := NEW.\"title\";\n RETURN NEW;\nEND\n$$;\n\nDROP TRIGGER IF EXISTS trigger_f292e497df78\nON \"ci_pipeline_metadata\";\n\nCREATE TRIGGER trigger_f292e497df78\nBEFORE UPDATE OF \"title\" ON \"ci_pipeline_metadata\"\nFOR EACH ROW EXECUTE FUNCTION function_for_trigger_f292e497df78();\n")6660main: -> 0.0009s6661main: == 20221017084208 RenameCiPipelineMetadataTitle: migrated (0.0732s) ===========6662main: == 20221017084227 CleanupRenameCiPipelineMetadataTitle: migrating =============6663main: -- column_exists?(:ci_pipeline_metadata, :title)6664main: -> 0.0025s6665main: -- transaction_open?()6666main: -> 0.0000s6667main: -- quote_table_name(:ci_pipeline_metadata)6668main: -> 0.0000s6669main: -- execute("DROP TRIGGER IF EXISTS trigger_5ea69df84db9\nON \"ci_pipeline_metadata\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_5ea69df84db9;\n")6670main: -> 0.0010s6671main: -- execute("DROP TRIGGER IF EXISTS trigger_4d1e05e0275c\nON \"ci_pipeline_metadata\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_4d1e05e0275c;\n")6672main: -> 0.0007s6673main: -- execute("DROP TRIGGER IF EXISTS trigger_f292e497df78\nON \"ci_pipeline_metadata\";\n\nDROP FUNCTION IF EXISTS function_for_trigger_f292e497df78;\n")6674main: -> 0.0008s6675main: -- remove_column(:ci_pipeline_metadata, :title)6676main: -> 0.0008s6677main: == 20221017084227 CleanupRenameCiPipelineMetadataTitle: migrated (0.0100s) ====6678main: == 20221018050323 AddObjectiveAndKeyresultToWorkItemTypes: migrating ==========6679main: -- execute("INSERT INTO work_item_types (base_type, icon_name, name, created_at, updated_at) VALUES(\n 5, 'issue-type-objective', 'Objective', NOW(), NOW()\n ) ON CONFLICT DO NOTHING;\n")6680main: -> 0.0009s6681main: -- execute("INSERT INTO work_item_types (base_type, icon_name, name, created_at, updated_at) VALUES(\n 6, 'issue-type-keyresult', 'Key Result', NOW(), NOW()\n ) ON CONFLICT DO NOTHING;\n")6682main: -> 0.0010s6683main: == 20221018050323 AddObjectiveAndKeyresultToWorkItemTypes: migrated (0.0059s) =6684main: == 20221018062308 ScheduleBackfillProjectNamespaceDetails: migrating ==========6685main: == 20221018062308 ScheduleBackfillProjectNamespaceDetails: migrated (0.0347s) =6686main: == 20221018081416 MembersRemoveMemberNamespaceIdNotNullConstraint: migrating ==6687main: -- transaction_open?()6688main: -> 0.0000s6689main: -- transaction_open?()6690main: -> 0.0000s6691main: -- execute(" ALTER TABLE members\n DROP CONSTRAINT IF EXISTS check_508774aac0\n")6692main: -> 0.0009s6693main: == 20221018081416 MembersRemoveMemberNamespaceIdNotNullConstraint: migrated (0.0042s) 6694main: == 20221018092552 AddFileNameIndexToPackagesRpmRepositoryFiles: migrating =====6695main: -- transaction_open?()6696main: -> 0.0000s6697main: -- view_exists?(:postgres_partitions)6698main: -> 0.0012s6699main: -- index_exists?(:packages_rpm_repository_files, [:project_id, :file_name], {:name=>"index_packages_rpm_repository_files_on_project_id_and_file_name", :algorithm=>:concurrently})6700main: -> 0.0029s6701main: -- add_index(:packages_rpm_repository_files, [:project_id, :file_name], {:name=>"index_packages_rpm_repository_files_on_project_id_and_file_name", :algorithm=>:concurrently})6702main: -> 0.0014s6703main: -- transaction_open?()6704main: -> 0.0000s6705main: -- view_exists?(:postgres_partitions)6706main: -> 0.0010s6707main: -- index_exists?(:packages_rpm_repository_files, :project_id, {:name=>"index_packages_rpm_repository_files_on_project_id", :algorithm=>:concurrently})6708main: -> 0.0033s6709main: -- remove_index(:packages_rpm_repository_files, {:name=>"index_packages_rpm_repository_files_on_project_id", :algorithm=>:concurrently, :column=>:project_id})6710main: -> 0.0043s6711main: == 20221018092552 AddFileNameIndexToPackagesRpmRepositoryFiles: migrated (0.0294s) 6712main: == 20221018124029 AddConsumeAfterToGhostUserMigrations: migrating =============6713main: -- add_column(:ghost_user_migrations, :consume_after, :datetime_with_timezone, {:null=>false, :default=>#<Proc:0x00007f573a8e3008 /builds/gitlab-org/gitlab/db/migrate/20221018124029_add_consume_after_to_ghost_user_migrations.rb:5 (lambda)>})6714main: -> 0.0015s6715main: == 20221018124029 AddConsumeAfterToGhostUserMigrations: migrated (0.0018s) ====6716main: == 20221018124035 AddConsumeAfterIndexToGhostUserMigrations: migrating ========6717main: -- transaction_open?()6718main: -> 0.0000s6719main: -- view_exists?(:postgres_partitions)6720main: -> 0.0011s6721main: -- index_exists?(:ghost_user_migrations, [:consume_after, :id], {:name=>"index_ghost_user_migrations_on_consume_after_id", :algorithm=>:concurrently})6722main: -> 0.0025s6723main: -- add_index(:ghost_user_migrations, [:consume_after, :id], {:name=>"index_ghost_user_migrations_on_consume_after_id", :algorithm=>:concurrently})6724main: -> 0.0015s6725main: == 20221018124035 AddConsumeAfterIndexToGhostUserMigrations: migrated (0.0126s) 6726main: == 20221018193635 EnsureTaskNoteRenamingBackgroundMigrationFinished: migrating 6727main: == 20221018193635 EnsureTaskNoteRenamingBackgroundMigrationFinished: migrated (0.0159s) 6728main: == 20221018193827 DropTmpIndexSystemNoteMetadataOnIdWhereTask: migrating ======6729main: -- transaction_open?()6730main: -> 0.0000s6731main: -- view_exists?(:postgres_partitions)6732main: -> 0.0013s6733main: -- indexes(:system_note_metadata)6734main: -> 0.0040s6735main: -- remove_index(:system_note_metadata, {:algorithm=>:concurrently, :name=>"tmp_index_system_note_metadata_on_id_where_task"})6736main: -> 0.0013s6737main: == 20221018193827 DropTmpIndexSystemNoteMetadataOnIdWhereTask: migrated (0.0135s) 6738main: == 20221018202524 CreateDependencyProxyBlobStates: migrating ==================6739main: -- create_table(:dependency_proxy_blob_states, {:id=>false, :comment=>"{\"owner\":\"group::geo\",\"description\":\"Geo-specific table to store the verification state of DependencyProxy::Blob objects\"}"})6740main: -- quote_column_name(:verification_failure)6741main: -> 0.0000s6742main: -> 0.0088s6743main: == 20221018202524 CreateDependencyProxyBlobStates: migrated (0.0091s) =========6744main: == 20221018232820 AddTempIndexForUserDetailsFields: migrating =================6745main: -- transaction_open?()6746main: -> 0.0000s6747main: -- view_exists?(:postgres_partitions)6748main: -> 0.0011s6749main: -- index_exists?(:users, :id, {:name=>"tmp_idx_where_user_details_fields_filled", :where=>"(COALESCE(linkedin, '') IS DISTINCT FROM '')\nOR (COALESCE(twitter, '') IS DISTINCT FROM '')\nOR (COALESCE(skype, '') IS DISTINCT FROM '')\nOR (COALESCE(website_url, '') IS DISTINCT FROM '')\nOR (COALESCE(location, '') IS DISTINCT FROM '')\nOR (COALESCE(organization, '') IS DISTINCT FROM '')\n", :algorithm=>:concurrently})6750main: -> 0.0202s6751main: -- add_index(:users, :id, {:name=>"tmp_idx_where_user_details_fields_filled", :where=>"(COALESCE(linkedin, '') IS DISTINCT FROM '')\nOR (COALESCE(twitter, '') IS DISTINCT FROM '')\nOR (COALESCE(skype, '') IS DISTINCT FROM '')\nOR (COALESCE(website_url, '') IS DISTINCT FROM '')\nOR (COALESCE(location, '') IS DISTINCT FROM '')\nOR (COALESCE(organization, '') IS DISTINCT FROM '')\n", :algorithm=>:concurrently})6752main: -> 0.0025s6753main: == 20221018232820 AddTempIndexForUserDetailsFields: migrated (0.0313s) ========6754main: == 20221019002459 QueueBackfillUserDetailsFields: migrating ===================6755main: == 20221019002459 QueueBackfillUserDetailsFields: migrated (0.0270s) ==========6756main: == 20221019102426 RemoveTmpIndexApprovalMergeRequestRulesOnReportType: migrating 6757main: -- transaction_open?()6758main: -> 0.0000s6759main: -- view_exists?(:postgres_partitions)6760main: -> 0.0010s6761main: -- indexes(:approval_merge_request_rules)6762main: -> 0.0071s6763main: -- remove_index(:approval_merge_request_rules, {:algorithm=>:concurrently, :name=>"tmp_index_approval_merge_request_rules_on_report_type_equal_one"})6764main: -> 0.0011s6765main: == 20221019102426 RemoveTmpIndexApprovalMergeRequestRulesOnReportType: migrated (0.0153s) 6766main: == 20221019105041 QueuePopulateProjectsStarCount: migrating ===================6767main: == 20221019105041 QueuePopulateProjectsStarCount: migrated (0.0297s) ==========6768main: == 20221019141508 AddIndexToTestReportsIssueIdCreatedAtAndId: migrating =======6769main: -- transaction_open?()6770main: -> 0.0000s6771main: -- view_exists?(:postgres_partitions)6772main: -> 0.0011s6773main: -- index_exists?("requirements_management_test_reports", [:issue_id, :created_at, :id], {:name=>"idx_test_reports_on_issue_id_created_at_and_id", :algorithm=>:concurrently})6774main: -> 0.0038s6775main: -- add_index("requirements_management_test_reports", [:issue_id, :created_at, :id], {:name=>"idx_test_reports_on_issue_id_created_at_and_id", :algorithm=>:concurrently})6776main: -> 0.0015s6777main: == 20221019141508 AddIndexToTestReportsIssueIdCreatedAtAndId: migrated (0.0137s) 6778main: == 20221019194751 DisableFastupdateOnIssuesTitleGinIndex: migrating ===========6779main: -- indexes(:issues)6780main: -> 0.0240s6781main: -- transaction_open?()6782main: -> 0.0000s6783main: -- execute("ALTER INDEX index_issues_on_title_trigram SET ( fastupdate = false ) ;\n")6784main: -> 0.0007s6785main: == 20221019194751 DisableFastupdateOnIssuesTitleGinIndex: migrated (0.0281s) ==6786main: == 20221019195754 DisableFastupdateOnIssuesDescriptionGinIndex: migrating =====6787main: -- indexes(:issues)6788main: -> 0.0241s6789main: -- transaction_open?()6790main: -> 0.0000s6791main: -- execute("ALTER INDEX index_issues_on_description_trigram SET ( fastupdate = false ) ;\n")6792main: -> 0.0007s6793main: == 20221019195754 DisableFastupdateOnIssuesDescriptionGinIndex: migrated (0.0282s) 6794main: == 20221019200033 DisableFastupdateOnMergeRequestsTitleGinIndex: migrating ====6795main: -- indexes(:merge_requests)6796main: -> 0.0235s6797main: -- transaction_open?()6798main: -> 0.0000s6799main: -- execute("ALTER INDEX index_merge_requests_on_title_trigram SET ( fastupdate = false ) ;\n")6800main: -> 0.0006s6801main: == 20221019200033 DisableFastupdateOnMergeRequestsTitleGinIndex: migrated (0.0270s) 6802main: == 20221019200206 DisableFastupdateOnMergeRequestsDescriptionGinIndex: migrating 6803main: -- indexes(:merge_requests)6804main: -> 0.0232s6805main: -- transaction_open?()6806main: -> 0.0000s6807main: -- execute("ALTER INDEX index_merge_requests_on_description_trigram SET ( fastupdate = false ) ;\n")6808main: -> 0.0007s6809main: == 20221019200206 DisableFastupdateOnMergeRequestsDescriptionGinIndex: migrated (0.0267s) 6810main: == 20221020124018 AddDeleteStartedAtToContainerRepositories: migrating ========6811main: -- add_column(:container_repositories, :delete_started_at, :datetime_with_timezone, {:null=>true, :default=>nil})6812main: -> 0.0019s6813main: == 20221020124018 AddDeleteStartedAtToContainerRepositories: migrated (0.0021s) 6814main: == 20221021082255 AddUniqueIndexOnCiRunnersToken: migrating ===================6815main: -- transaction_open?()6816main: -> 0.0000s6817main: -- transaction_open?()6818main: -> 0.0000s6819main: -- view_exists?(:postgres_partitions)6820main: -> 0.0010s6821main: -- index_exists?(:ci_runners, :token, {:name=>"index_uniq_ci_runners_on_token", :unique=>true, :algorithm=>:concurrently})6822main: -> 0.0109s6823main: -- add_index(:ci_runners, :token, {:name=>"index_uniq_ci_runners_on_token", :unique=>true, :algorithm=>:concurrently})6824main: -> 0.0015s6825main: == 20221021082255 AddUniqueIndexOnCiRunnersToken: migrated (0.0261s) ==========6826main: == 20221021082312 AddUniqueIndexOnCiRunnersTokenEncrypted: migrating ==========6827main: -- transaction_open?()6828main: -> 0.0000s6829main: -- transaction_open?()6830main: -> 0.0000s6831main: -- view_exists?(:postgres_partitions)6832main: -> 0.0012s6833main: -- index_exists?(:ci_runners, :token_encrypted, {:name=>"index_uniq_ci_runners_on_token_encrypted", :unique=>true, :algorithm=>:concurrently})6834main: -> 0.0120s6835main: -- add_index(:ci_runners, :token_encrypted, {:name=>"index_uniq_ci_runners_on_token_encrypted", :unique=>true, :algorithm=>:concurrently})6836main: -> 0.0016s6837main: == 20221021082312 AddUniqueIndexOnCiRunnersTokenEncrypted: migrated (0.0283s) =6838main: == 20221021082720 DropIndexOnCiRunnersToken: migrating ========================6839main: -- transaction_open?()6840main: -> 0.0000s6841main: -- view_exists?(:postgres_partitions)6842main: -> 0.0009s6843main: -- indexes(:ci_runners)6844main: -> 0.0118s6845main: -- remove_index(:ci_runners, {:algorithm=>:concurrently, :name=>"index_ci_runners_on_token"})6846main: -> 0.0011s6847main: == 20221021082720 DropIndexOnCiRunnersToken: migrated (0.0200s) ===============6848main: == 20221021082734 DropIndexOnCiRunnersTokenEncrypted: migrating ===============6849main: -- transaction_open?()6850main: -> 0.0000s6851main: -- view_exists?(:postgres_partitions)6852main: -> 0.0010s6853main: -- indexes(:ci_runners)6854main: -> 0.0116s6855main: -- remove_index(:ci_runners, {:algorithm=>:concurrently, :name=>"index_ci_runners_on_token_encrypted"})6856main: -> 0.0012s6857main: == 20221021082734 DropIndexOnCiRunnersTokenEncrypted: migrated (0.0205s) ======6858main: == 20221021145820 CreateRoutingTableForBuildsMetadataV2: migrating ============6859main: -- transaction_open?()6860main: -> 0.0000s6861main: -- execute("CREATE TABLE IF NOT EXISTS \"p_ci_builds_metadata\" (\n LIKE \"ci_builds_metadata\" INCLUDING ALL\n) PARTITION BY LIST(\"partition_id\")\n")6862main: -> 0.0025s6863main: -- foreign_keys(:ci_builds_metadata)6864main: -> 0.0029s6865main: -- foreign_keys(:p_ci_builds_metadata)6866main: -> 0.0026s6867main: -- add_foreign_key(:p_ci_builds_metadata, "ci_builds", {:column=>"build_id", :name=>"fk_e20479742e", :primary_key=>"id", :on_delete=>:cascade, :on_update=>nil, :validate=>true})6868main: -> 0.0010s6869main: -- execute("LOCK \"ci_builds\", \"ci_builds_metadata\" IN ACCESS EXCLUSIVE MODE\n;\n\nALTER TABLE \"p_ci_builds_metadata\"\nATTACH PARTITION ci_builds_metadata\nFOR VALUES IN (100)\n;\n\nALTER SEQUENCE \"ci_builds_metadata_id_seq\" OWNED BY \"p_ci_builds_metadata\".\"id\";\n\nALTER TABLE \"p_ci_builds_metadata\"\nDROP CONSTRAINT \"partitioning_constraint\"\n")6870main: -> 0.0023s6871main: == 20221021145820 CreateRoutingTableForBuildsMetadataV2: migrated (0.0456s) ===6872main: == 20221021160735 AddIndexForCommonFinderQueryDescWithNamespaceId: migrating ==6873main: -- transaction_open?()6874main: -> 0.0000s6875main: -- view_exists?(:postgres_partitions)6876main: -> 0.0011s6877main: -- index_exists?(:vulnerability_reads, [:namespace_id, :state, :report_type, :severity, :vulnerability_id], {:name=>"index_group_vulnerability_reads_common_finder_query_desc", :order=>{:severity=>:desc, :vulnerability_id=>:desc}, :algorithm=>:concurrently})6878main: -> 0.0108s6879main: -- add_index(:vulnerability_reads, [:namespace_id, :state, :report_type, :severity, :vulnerability_id], {:name=>"index_group_vulnerability_reads_common_finder_query_desc", :order=>{:severity=>:desc, :vulnerability_id=>:desc}, :algorithm=>:concurrently})6880main: -> 0.0015s6881main: == 20221021160735 AddIndexForCommonFinderQueryDescWithNamespaceId: migrated (0.0203s) 6882main: == 20221021213216 CreateNamespaceCommitEmails: migrating ======================6883main: -- create_table(:namespace_commit_emails, {})6884main: -> 0.0064s6885main: == 20221021213216 CreateNamespaceCommitEmails: migrated (0.0066s) =============6886main: == 20221022213505 AddNamespaceCommitEmailsNamespaceFk: migrating ==============6887main: -- transaction_open?()6888main: -> 0.0000s6889main: -- foreign_keys(:namespace_commit_emails)6890main: -> 0.0031s6891main: -- transaction_open?()6892main: -> 0.0000s6893main: -- execute("ALTER TABLE namespace_commit_emails\nADD CONSTRAINT fk_4d6ba63ba5\nFOREIGN KEY (namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")6894main: -> 0.0011s6895main: -- execute("ALTER TABLE namespace_commit_emails VALIDATE CONSTRAINT fk_4d6ba63ba5;")6896main: -> 0.0012s6897main: == 20221022213505 AddNamespaceCommitEmailsNamespaceFk: migrated (0.0090s) =====6898main: == 20221022213521 AddNamespaceCommitEmailsEmailFk: migrating ==================6899main: -- transaction_open?()6900main: -> 0.0000s6901main: -- foreign_keys(:namespace_commit_emails)6902main: -> 0.0030s6903main: -- transaction_open?()6904main: -> 0.0000s6905main: -- execute("ALTER TABLE namespace_commit_emails\nADD CONSTRAINT fk_b8d89d555e\nFOREIGN KEY (email_id)\nREFERENCES emails (id)\nON DELETE CASCADE\nNOT VALID;\n")6906main: -> 0.0009s6907main: -- execute("ALTER TABLE namespace_commit_emails VALIDATE CONSTRAINT fk_b8d89d555e;")6908main: -> 0.0009s6909main: == 20221022213521 AddNamespaceCommitEmailsEmailFk: migrated (0.0081s) =========6910main: == 20221024034228 RemoveSprintsProjectIdColumn: migrating =====================6911main: -- transaction_open?()6912main: -> 0.0000s6913main: -- column_exists?(:sprints, :project_id)6914main: -> 0.0022s6915main: -- remove_column(:sprints, :project_id, :bigint)6916main: -> 0.0015s6917main: == 20221024034228 RemoveSprintsProjectIdColumn: migrated (0.0064s) ============6918main: == 20221024121500 DropFingerprintFromSbomSources: migrating ===================6919main: -- remove_column(:sbom_sources, :fingerprint, :bytea)6920main: -> 0.0007s6921main: == 20221024121500 DropFingerprintFromSbomSources: migrated (0.0009s) ==========6922main: == 20221025043930 ChangeDefaultValueOnPasswordLastChangedAtToUserDetails: migrating 6923main: -- remove_column(:user_details, :password_last_changed_at, :datetime_with_timezone)6924main: -> 0.0008s6925main: -- add_column(:user_details, :password_last_changed_at, :datetime_with_timezone, {:null=>false, :default=>#<Proc:0x00007f57459f4568 /builds/gitlab-org/gitlab/db/migrate/20221025043930_change_default_value_on_password_last_changed_at_to_user_details.rb:10 (lambda)>, :comment=>"JiHu-specific column"})6926main: -> 0.0014s6927main: == 20221025043930 ChangeDefaultValueOnPasswordLastChangedAtToUserDetails: migrated (0.0025s) 6928main: == 20221025105205 AddStatusAndIdIndexToContainerRepositories: migrating =======6929main: -- transaction_open?()6930main: -> 0.0000s6931main: -- view_exists?(:postgres_partitions)6932main: -> 0.0010s6933main: -- index_exists?(:container_repositories, [:status, :id], {:name=>"index_container_repositories_on_status_and_id", :where=>"status IS NOT NULL", :algorithm=>:concurrently})6934main: -> 0.0100s6935main: -- add_index(:container_repositories, [:status, :id], {:name=>"index_container_repositories_on_status_and_id", :where=>"status IS NOT NULL", :algorithm=>:concurrently})6936main: -> 0.0015s6937main: == 20221025105205 AddStatusAndIdIndexToContainerRepositories: migrated (0.0195s) 6938main: == 20221025115006 CheckVulnerabilitiesStateTransitionFromStateNotEqualToState: migrating 6939main: -- transaction_open?()6940main: -> 0.0000s6941main: -- current_schema()6942main: -> 0.0005s6943main: -- transaction_open?()6944main: -> 0.0000s6945main: -- execute("ALTER TABLE vulnerability_state_transitions\nADD CONSTRAINT check_d1ca8ec043\nCHECK ( (from_state != to_state) )\nNOT VALID;\n")6946main: -> 0.0010s6947main: -- current_schema()6948main: -> 0.0004s6949main: -- execute("ALTER TABLE vulnerability_state_transitions VALIDATE CONSTRAINT check_d1ca8ec043;")6950main: -> 0.0007s6951main: == 20221025115006 CheckVulnerabilitiesStateTransitionFromStateNotEqualToState: migrated (0.0086s) 6952main: == 20221025145452 ChangeVulnerabilityFeedbackUniqueIdx: migrating =============6953main: -- transaction_open?()6954main: -> 0.0000s6955main: -- view_exists?(:postgres_partitions)6956main: -> 0.0011s6957main: -- index_exists?(:vulnerability_feedback, [:project_id, :category, :feedback_type, :project_fingerprint], {:name=>:index_vulnerability_feedback_on_common_attributes, :algorithm=>:concurrently})6958main: -> 0.0065s6959main: -- add_index(:vulnerability_feedback, [:project_id, :category, :feedback_type, :project_fingerprint], {:name=>:index_vulnerability_feedback_on_common_attributes, :algorithm=>:concurrently})6960main: -> 0.0015s6961main: -- transaction_open?()6962main: -> 0.0000s6963main: -- view_exists?(:postgres_partitions)6964main: -> 0.0009s6965main: -- indexes(:vulnerability_feedback)6966main: -> 0.0074s6967main: -- remove_index(:vulnerability_feedback, {:algorithm=>:concurrently, :name=>:vulnerability_feedback_unique_idx})6968main: -> 0.0012s6969main: == 20221025145452 ChangeVulnerabilityFeedbackUniqueIdx: migrated (0.0321s) ====6970main: == 20221025150202 AddIndexForFindingUuidAndFeedbackTypeOnFeedback: migrating ==6971main: -- transaction_open?()6972main: -> 0.0000s6973main: -- view_exists?(:postgres_partitions)6974main: -> 0.0010s6975main: -- index_exists?(:vulnerability_feedback, [:feedback_type, :finding_uuid], {:name=>:index_vulnerability_feedback_on_feedback_type_and_finding_uuid, :algorithm=>:concurrently})6976main: -> 0.0073s6977main: -- add_index(:vulnerability_feedback, [:feedback_type, :finding_uuid], {:name=>:index_vulnerability_feedback_on_feedback_type_and_finding_uuid, :algorithm=>:concurrently})6978main: -> 0.0014s6979main: == 20221025150202 AddIndexForFindingUuidAndFeedbackTypeOnFeedback: migrated (0.0173s) 6980main: == 20221025220607 AddIndexIdOnScanFindingApprovalMergeRequestRules: migrating =6981main: -- transaction_open?()6982main: -> 0.0000s6983main: -- view_exists?(:postgres_partitions)6984main: -> 0.0011s6985main: -- index_exists?(:approval_merge_request_rules, :id, {:where=>"report_type = 4", :name=>"scan_finding_approval_mr_rule_index_id", :algorithm=>:concurrently})6986main: -> 0.0074s6987main: -- add_index(:approval_merge_request_rules, :id, {:where=>"report_type = 4", :name=>"scan_finding_approval_mr_rule_index_id", :algorithm=>:concurrently})6988main: -> 0.0016s6989main: == 20221025220607 AddIndexIdOnScanFindingApprovalMergeRequestRules: migrated (0.0446s) 6990main: == 20221026095133 AddStatusUpdatedAtToContainerRepository: migrating ==========6991main: -- add_column(:container_repositories, :status_updated_at, :datetime_with_timezone)6992main: -> 0.0014s6993main: == 20221026095133 AddStatusUpdatedAtToContainerRepository: migrated (0.0015s) =6994main: == 20221027124848 AddTextLimitToProjectSettingsMirrorBranchRegex: migrating ===6995main: -- transaction_open?()6996main: -> 0.0000s6997main: -- current_schema()6998main: -> 0.0005s6999main: -- transaction_open?()7000main: -> 0.0000s7001main: -- execute("ALTER TABLE project_settings\nADD CONSTRAINT check_67292e4b99\nCHECK ( char_length(mirror_branch_regex) <= 255 )\nNOT VALID;\n")7002main: -> 0.0010s7003main: -- current_schema()7004main: -> 0.0004s7005main: -- execute("ALTER TABLE project_settings VALIDATE CONSTRAINT check_67292e4b99;")7006main: -> 0.0007s7007main: == 20221027124848 AddTextLimitToProjectSettingsMirrorBranchRegex: migrated (0.0086s) 7008main: == 20221027203556 DeleteExperimentUserForeignKeys: migrating ==================7009main: -- transaction_open?()7010main: -> 0.0000s7011main: -- foreign_keys(:experiment_users)7012main: -> 0.0029s7013main: -- remove_foreign_key(:experiment_users, :experiments, {:name=>"fk_rails_56d4708b4a"})7014main: -> 0.0036s7015main: -- transaction_open?()7016main: -> 0.0000s7017main: -- foreign_keys(:experiment_users)7018main: -> 0.0028s7019main: -- remove_foreign_key(:experiment_users, :users, {:name=>"fk_rails_fd805f771a"})7020main: -> 0.0040s7021main: == 20221027203556 DeleteExperimentUserForeignKeys: migrated (0.0183s) =========7022main: == 20221027203951 DropExperimentUsersTable: migrating =========================7023main: -- drop_table(:experiment_users)7024main: -> 0.0018s7025main: == 20221027203951 DropExperimentUsersTable: migrated (0.0020s) ================7026main: == 20221028000041 RemoveInvalidPartialTrigramIndexesForIssues: migrating ======7027main: -- transaction_open?()7028main: -> 0.0000s7029main: -- view_exists?(:postgres_partitions)7030main: -> 0.0010s7031main: -- indexes(:issues)7032main: -> 0.0230s7033main: -- current_schema()7034main: -> 0.0004s7035main: -- transaction_open?()7036main: -> 0.0000s7037main: -- view_exists?(:postgres_partitions)7038main: -> 0.0010s7039main: -- indexes(:issues)7040main: -> 0.0221s7041main: -- current_schema()7042main: -> 0.0004s7043main: == 20221028000041 RemoveInvalidPartialTrigramIndexesForIssues: migrated (0.0581s) 7044main: == 20221028000603 PreparePartialTrigramIndexesForIssuesAttempt3: migrating ====7045main: -- index_exists?(:issues, :title, {:name=>"index_issues_on_title_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})7046main: -> 0.0211s7047main: -- add_index_options(:issues, :title, {:name=>"index_issues_on_title_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})7048main: -> 0.0001s7049main: -- index_exists?(:issues, :description, {:name=>"index_issues_on_description_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})7050main: -> 0.0238s7051main: -- add_index_options(:issues, :description, {:name=>"index_issues_on_description_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})7052main: -> 0.0001s7053main: == 20221028000603 PreparePartialTrigramIndexesForIssuesAttempt3: migrated (0.0522s) 7054main: == 20221028015347 AddCommitCommitterNameCheckToPushRules: migrating ===========7055main: -- add_column(:push_rules, :commit_committer_name_check, :boolean, {:default=>false, :null=>false})7056main: -> 0.0020s7057main: == 20221028015347 AddCommitCommitterNameCheckToPushRules: migrated (0.0023s) ==7058main: == 20221028022627 AddIndexOnPasswordLastChangedAtToUserDetails: migrating =====7059main: -- transaction_open?()7060main: -> 0.0000s7061main: -- view_exists?(:postgres_partitions)7062main: -> 0.0010s7063main: -- index_exists?(:user_details, :password_last_changed_at, {:name=>"index_user_details_on_password_last_changed_at", :comment=>"JiHu-specific index", :algorithm=>:concurrently})7064main: -> 0.0038s7065main: -- add_index(:user_details, :password_last_changed_at, {:name=>"index_user_details_on_password_last_changed_at", :comment=>"JiHu-specific index", :algorithm=>:concurrently})7066main: -> 0.0019s7067main: == 20221028022627 AddIndexOnPasswordLastChangedAtToUserDetails: migrated (0.0136s) 7068main: == 20221028152422 AddFindingDataColumnToSecurityFindings: migrating ===========7069main: -- add_column(:security_findings, :finding_data, :jsonb, {:default=>{}, :null=>false})7070main: -> 0.0017s7071main: == 20221028152422 AddFindingDataColumnToSecurityFindings: migrated (0.0020s) ==7072main: == 20221031102916 AddUsersForeignKeyToProjects: migrating =====================7073main: -- transaction_open?()7074main: -> 0.0000s7075main: -- foreign_keys(:projects)7076main: -> 0.0029s7077main: -- transaction_open?()7078main: -> 0.0000s7079main: -- execute("ALTER TABLE projects\nADD CONSTRAINT fk_03ec10b0d3\nFOREIGN KEY (creator_id)\nREFERENCES users (id)\nON DELETE SET NULL\nNOT VALID;\n")7080main: -> 0.0019s7081main: == 20221031102916 AddUsersForeignKeyToProjects: migrated (0.0076s) ============7082main: == 20221101032521 AddDefaultPreferredLanguageToApplicationSettings: migrating =7083main: -- add_column(:application_settings, :default_preferred_language, :text, {:default=>"en", :null=>false})7084main: -> 0.0028s7085main: == 20221101032521 AddDefaultPreferredLanguageToApplicationSettings: migrated (0.0030s) 7086main: == 20221101032600 AddTextLimitToDefaultPreferredLanguageOnApplicationSettings: migrating 7087main: -- transaction_open?()7088main: -> 0.0000s7089main: -- current_schema()7090main: -> 0.0006s7091main: -- transaction_open?()7092main: -> 0.0000s7093main: -- execute("ALTER TABLE application_settings\nADD CONSTRAINT check_e2692d7523\nCHECK ( char_length(default_preferred_language) <= 32 )\nNOT VALID;\n")7094main: -> 0.0015s7095main: -- current_schema()7096main: -> 0.0005s7097main: -- execute("ALTER TABLE application_settings VALIDATE CONSTRAINT check_e2692d7523;")7098main: -> 0.0014s7099main: == 20221101032600 AddTextLimitToDefaultPreferredLanguageOnApplicationSettings: migrated (0.0099s) 7100main: == 20221101174816 CreatePackageMetadata: migrating ============================7101main: -- create_table(:pm_packages, {})7102main: -- quote_column_name(:name)7103main: -> 0.0000s7104main: -> 0.0038s7105main: == 20221101174816 CreatePackageMetadata: migrated (0.0041s) ===================7106main: == 20221101194416 CreatePackageMetadataVersions: migrating ====================7107main: -- create_table(:pm_package_versions, {})7108main: -- quote_column_name(:version)7109main: -> 0.0000s7110main: -> 0.0047s7111main: == 20221101194416 CreatePackageMetadataVersions: migrated (0.0049s) ===========7112main: == 20221101195309 CreatePackageMetadataLicenses: migrating ====================7113main: -- create_table(:pm_licenses, {})7114main: -- quote_column_name(:spdx_identifier)7115main: -> 0.0000s7116main: -> 0.0037s7117main: == 20221101195309 CreatePackageMetadataLicenses: migrated (0.0039s) ===========7118main: == 20221101195543 CreatePackageMetadataPackageVersionLicenses: migrating ======7119main: -- create_table(:pm_package_version_licenses, {:primary_key=>[:pm_package_version_id, :pm_license_id]})7120main: -> 0.0041s7121main: == 20221101195543 CreatePackageMetadataPackageVersionLicenses: migrated (0.0043s) 7122main: == 20221101195903 ChangeEmailConfirmationSettingDefault: migrating ============7123main: -- change_column_default(:application_settings, :email_confirmation_setting, {:from=>2, :to=>0})7124main: -> 0.1873s7125main: == 20221101195903 ChangeEmailConfirmationSettingDefault: migrated (0.1875s) ===7126main: == 20221101201031 SetEmailConfirmationSettingFromSendUserConfirmationEmailSetting: migrating 7127main: == 20221101201031 SetEmailConfirmationSettingFromSendUserConfirmationEmailSetting: migrated (0.0111s) 7128main: == 20221102090940 CreateNextCiPartitionsRecord: migrating =====================7129main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].7130main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared, :gitlab_internal, :gitlab_pm].7131main: == 20221102090940 CreateNextCiPartitionsRecord: migrated (0.0002s) ============7132main: == 20221102090943 CreateSecondPartitionForBuildsMetadata: migrating ===========7133main: == 20221102090943 CreateSecondPartitionForBuildsMetadata: migrated (0.0001s) ==7134main: == 20221102150737 IndexEnvironmentsForNameSearchWithinFolder: migrating =======7135main: -- transaction_open?()7136main: -> 0.0000s7137main: -- view_exists?(:postgres_partitions)7138main: -> 0.0012s7139main: -- index_exists?(:environments, "project_id, lower(ltrim(name, environment_type || '/')) varchar_pattern_ops, state", {:name=>"index_environments_for_name_search_within_folder", :algorithm=>:concurrently})7140main: -> 0.0070s7141main: -- add_index(:environments, "project_id, lower(ltrim(name, environment_type || '/')) varchar_pattern_ops, state", {:name=>"index_environments_for_name_search_within_folder", :algorithm=>:concurrently})7142main: -> 0.0019s7143main: == 20221102150737 IndexEnvironmentsForNameSearchWithinFolder: migrated (0.0177s) 7144main: == 20221102195642 CreateDependencyProxyManifestStates: migrating ==============7145main: -- create_table(:dependency_proxy_manifest_states, {:id=>false})7146main: -- quote_column_name(:verification_failure)7147main: -> 0.0000s7148main: -> 0.0080s7149main: == 20221102195642 CreateDependencyProxyManifestStates: migrated (0.0083s) =====7150main: == 20221102202130 ExtendX509SubjectLimit: migrating ===========================7151main: -- change_column(:x509_certificates, :subject, :string, {:limit=>512})7152main: -> 0.0015s7153main: == 20221102202130 ExtendX509SubjectLimit: migrated (0.0018s) ==================7154main: == 20221102225800 AddMaxSeatsUsedChangedAtIndexToGitlabSubscriptions: migrating 7155main: -- transaction_open?()7156main: -> 0.0000s7157main: -- view_exists?(:postgres_partitions)7158main: -> 0.0012s7159main: -- index_exists?(:gitlab_subscriptions, [:max_seats_used_changed_at, :namespace_id], {:name=>"index_gitlab_subscriptions_on_max_seats_used_changed_at", :algorithm=>:concurrently})7160main: -> 0.0039s7161main: -- add_index(:gitlab_subscriptions, [:max_seats_used_changed_at, :namespace_id], {:name=>"index_gitlab_subscriptions_on_max_seats_used_changed_at", :algorithm=>:concurrently})7162main: -> 0.0016s7163main: == 20221102225800 AddMaxSeatsUsedChangedAtIndexToGitlabSubscriptions: migrated (0.0144s) 7164main: == 20221103073328 ChangeMemberNamespaceIdNotNull: migrating ===================7165main: -- current_schema()7166main: -> 0.0006s7167main: -- transaction_open?()7168main: -> 0.0000s7169main: -- current_schema()7170main: -> 0.0005s7171main: -- transaction_open?()7172main: -> 0.0000s7173main: -- execute("ALTER TABLE members\nADD CONSTRAINT check_508774aac0\nCHECK ( member_namespace_id IS NOT NULL )\nNOT VALID;\n")7174main: -> 0.0010s7175main: == 20221103073328 ChangeMemberNamespaceIdNotNull: migrated (0.0099s) ==========7176main: == 20221103084213 RemoveTmpIndexMembersOnIdWhereNamespaceIdNull: migrating ====7177main: -- transaction_open?()7178main: -> 0.0000s7179main: -- view_exists?(:postgres_partitions)7180main: -> 0.0013s7181main: -- indexes(:members)7182main: -> 0.0136s7183main: -- remove_index(:members, {:algorithm=>:concurrently, :name=>"tmp_index_members_on_id_where_namespace_id_null"})7184main: -> 0.0015s7185main: == 20221103084213 RemoveTmpIndexMembersOnIdWhereNamespaceIdNull: migrated (0.0241s) 7186main: == 20221103131409 AddPartialIndexOnPrimaryKeyOfSecurityScans: migrating =======7187main: -- transaction_open?()7188main: -> 0.0000s7189main: -- view_exists?(:postgres_partitions)7190main: -> 0.0014s7191main: -- index_exists?(:security_scans, :id, {:where=>"status != 6", :name=>:index_security_scans_on_id_for_non_purged_records, :algorithm=>:concurrently})7192main: -> 0.0071s7193main: -- add_index(:security_scans, :id, {:where=>"status != 6", :name=>:index_security_scans_on_id_for_non_purged_records, :algorithm=>:concurrently})7194main: -> 0.0018s7195main: == 20221103131409 AddPartialIndexOnPrimaryKeyOfSecurityScans: migrated (0.0204s) 7196main: == 20221103150250 MigrateSidekiqQueuedJobs: migrating =========================7197main: == 20221103150250 MigrateSidekiqQueuedJobs: migrated (0.0002s) ================7198main: == 20221103205317 CreateDastPreScanVerification: migrating ====================7199main: -- create_table(:dast_pre_scan_verifications, {})7200main: -> 0.0068s7201main: == 20221103205317 CreateDastPreScanVerification: migrated (0.0071s) ===========7202main: == 20221104042137 AddPartialTrigramIndexForIssueTitleAttempt2: migrating ======7203main: -- transaction_open?()7204main: -> 0.0000s7205main: -- view_exists?(:postgres_partitions)7206main: -> 0.0015s7207main: -- index_exists?(:issues, :title, {:name=>"index_issues_on_title_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})7208main: -> 0.0256s7209main: -- add_index(:issues, :title, {:name=>"index_issues_on_title_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})7210main: -> 0.0023s7211main: == 20221104042137 AddPartialTrigramIndexForIssueTitleAttempt2: migrated (0.0413s) 7212main: == 20221104042159 AddPartialTrigramIndexForIssueDescriptionAttempt2: migrating 7213main: -- transaction_open?()7214main: -> 0.0000s7215main: -- view_exists?(:postgres_partitions)7216main: -> 0.0012s7217main: -- index_exists?(:issues, :description, {:name=>"index_issues_on_description_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})7218main: -> 0.0247s7219main: -- add_index(:issues, :description, {:name=>"index_issues_on_description_trigram_non_latin", :using=>:gin, :opclass=>{:description=>:gin_trgm_ops}, :where=>"title NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*' OR description NOT SIMILAR TO '[\\u0000-\\u02FF\\u1E00-\\u1EFF\\u2070-\\u218F]*'", :algorithm=>:concurrently})7220main: -> 0.0018s7221main: == 20221104042159 AddPartialTrigramIndexForIssueDescriptionAttempt2: migrated (0.0382s) 7222main: == 20221104061320 AddDisableDownloadButtonIntoApplicationSettings: migrating ==7223main: -- add_column(:application_settings, :disable_download_button, :boolean, {:null=>false, :default=>false, :comment=>"JiHu-specific column"})7224main: -> 0.0033s7225main: == 20221104061320 AddDisableDownloadButtonIntoApplicationSettings: migrated (0.0036s) 7226main: == 20221104074652 AddTempIndexForProjectStatisticsUploadSizeMigration: migrating 7227main: -- transaction_open?()7228main: -> 0.0000s7229main: -- view_exists?(:postgres_partitions)7230main: -> 0.0011s7231main: -- index_exists?(:project_statistics, [:project_id], {:name=>"tmp_index_project_statistics_uploads_size", :where=>"uploads_size <> 0", :algorithm=>:concurrently})7232main: -> 0.0062s7233main: -- add_index(:project_statistics, [:project_id], {:name=>"tmp_index_project_statistics_uploads_size", :where=>"uploads_size <> 0", :algorithm=>:concurrently})7234main: -> 0.0016s7235main: == 20221104074652 AddTempIndexForProjectStatisticsUploadSizeMigration: migrated (0.0161s) 7236main: == 20221104094042 RemoveUsersForeignKeyToProjects: migrating ==================7237main: -- transaction_open?()7238main: -> 0.0001s7239main: -- foreign_keys(:projects)7240main: -> 0.0032s7241main: -- remove_foreign_key(:projects, {:column=>:creator_id})7242main: -> 0.0047s7243main: == 20221104094042 RemoveUsersForeignKeyToProjects: migrated (0.0110s) =========7244main: == 20221104100203 RecreateAsyncTrigramIndexForVulnerabilityReadsContainerImages: migrating 7245main: -- transaction_open?()7246main: -> 0.0000s7247main: -- view_exists?(:postgres_partitions)7248main: -> 0.0011s7249main: -- indexes(:vulnerability_reads)7250main: -> 0.0106s7251main: -- current_schema()7252main: -> 0.0004s7253main: -- index_exists?(:vulnerability_reads, :location_image, {:name=>"index_vulnerability_reads_on_location_image_trigram", :using=>:gin, :opclass=>{:location_image=>:gin_trgm_ops}, :where=>"report_type = ANY (ARRAY[2, 7]) AND location_image IS NOT NULL", :algorithm=>:concurrently})7254main: -> 0.0106s7255main: -- add_index_options(:vulnerability_reads, :location_image, {:name=>"index_vulnerability_reads_on_location_image_trigram", :using=>:gin, :opclass=>{:location_image=>:gin_trgm_ops}, :where=>"report_type = ANY (ARRAY[2, 7]) AND location_image IS NOT NULL", :algorithm=>:concurrently})7256main: -> 0.0001s7257main: == 20221104100203 RecreateAsyncTrigramIndexForVulnerabilityReadsContainerImages: migrated (0.0318s) 7258main: == 20221104141647 AddIndexForNonPublicTopLevelGroupsToNamespaces: migrating ===7259main: -- transaction_open?()7260main: -> 0.0000s7261main: -- view_exists?(:postgres_partitions)7262main: -> 0.0010s7263main: -- index_exists?("namespaces", :id, {:name=>"index_namespaces_on_type_and_visibility_and_parent_id", :where=>"(type = 'Group' AND parent_id IS NULL AND visibility_level != 20)", :algorithm=>:concurrently})7264main: -> 0.0163s7265main: -- add_index("namespaces", :id, {:name=>"index_namespaces_on_type_and_visibility_and_parent_id", :where=>"(type = 'Group' AND parent_id IS NULL AND visibility_level != 20)", :algorithm=>:concurrently})7266main: -> 0.0022s7267main: == 20221104141647 AddIndexForNonPublicTopLevelGroupsToNamespaces: migrated (0.0271s) 7268main: == 20221104170500 AddVulnerabilityReadsAllStatusIndex: migrating ==============7269main: -- transaction_open?()7270main: -> 0.0000s7271main: -- view_exists?(:postgres_partitions)7272main: -> 0.0011s7273main: -- index_exists?(:vulnerability_reads, [:namespace_id, :report_type, :severity, :vulnerability_id], {:name=>"index_vulnerability_reads_on_namespace_type_severity_id", :algorithm=>:concurrently})7274main: -> 0.0116s7275main: -- add_index(:vulnerability_reads, [:namespace_id, :report_type, :severity, :vulnerability_id], {:name=>"index_vulnerability_reads_on_namespace_type_severity_id", :algorithm=>:concurrently})7276main: -> 0.0016s7277main: == 20221104170500 AddVulnerabilityReadsAllStatusIndex: migrated (0.0222s) =====7278main: == 20221104190203 ValidateEnvironmentIdOnDeployments: migrating ===============7279main: -- foreign_keys(:deployments)7280main: -> 0.0037s7281main: -- execute("ALTER TABLE deployments VALIDATE CONSTRAINT fk_009fd21147;")7282main: -> 0.0013s7283main: == 20221104190203 ValidateEnvironmentIdOnDeployments: migrated (0.0061s) ======7284main: == 20221107013943 AddAcceptedReviewersToMergeRequestPredictions: migrating ====7285main: -- add_column(:merge_request_predictions, :accepted_reviewers, :jsonb, {:null=>false, :default=>{}})7286main: -> 0.0013s7287main: == 20221107013943 AddAcceptedReviewersToMergeRequestPredictions: migrated (0.0015s) 7288main: == 20221107094359 RecountEpicCacheCounts: migrating ===========================7289main: == 20221107094359 RecountEpicCacheCounts: migrated (0.0311s) ==================7290main: == 20221107115247 ChangeScimIdentityGroupIdRemoveNull: migrating ==============7291main: -- change_column_null(:scim_identities, :group_id, true)7292main: -> 0.0012s7293main: == 20221107115247 ChangeScimIdentityGroupIdRemoveNull: migrated (0.0014s) =====7294main: == 20221107115413 ChangeScimOauthAccessTokenGroupIdRemoveNull: migrating ======7295main: -- change_column_null(:scim_oauth_access_tokens, :group_id, true)7296main: -> 0.0011s7297main: == 20221107115413 ChangeScimOauthAccessTokenGroupIdRemoveNull: migrated (0.0013s) 7298main: == 20221107183222 CreateProjectWikiRepositories: migrating ====================7299main: -- create_table(:project_wiki_repositories, {})7300main: -> 0.0041s7301main: == 20221107183222 CreateProjectWikiRepositories: migrated (0.0042s) ===========7302main: == 20221107184542 AddNewAmountUsedToCiNamespaceMonthlyUsages: migrating =======7303main: -- add_column(:ci_namespace_monthly_usages, :new_amount_used, :decimal, {:default=>0.0, :precision=>18, :scale=>4, :null=>false, :if_not_exists=>true})7304main: -> 0.0033s7305main: == 20221107184542 AddNewAmountUsedToCiNamespaceMonthlyUsages: migrated (0.0061s) 7306main: == 20221107184758 SyncNewAmountUsedForCiNamespaceMonthlyUsages: migrating =====7307main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].7308main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared, :gitlab_internal, :gitlab_pm].7309main: == 20221107184758 SyncNewAmountUsedForCiNamespaceMonthlyUsages: migrated (0.0002s) 7310main: == 20221107220420 ValidateNotNullConstraintOnMemberNamespaceId: migrating =====7311main: -- current_schema()7312main: -> 0.0005s7313main: -- execute("ALTER TABLE members VALIDATE CONSTRAINT check_508774aac0;")7314main: -> 0.0008s7315main: == 20221107220420 ValidateNotNullConstraintOnMemberNamespaceId: migrated (0.0033s) 7316main: == 20221107220526 ValidateFkMemberNamespaceId: migrating ======================7317main: -- foreign_keys(:members)7318main: -> 0.0032s7319main: -- execute("ALTER TABLE members VALIDATE CONSTRAINT fk_2f85abf8f1;")7320main: -> 0.0015s7321main: == 20221107220526 ValidateFkMemberNamespaceId: migrated (0.0056s) =============7322main: == 20221107222213 RemoveOldMemberNamespaceIdFk: migrating =====================7323main: -- transaction_open?()7324main: -> 0.0000s7325main: -- foreign_keys(:members)7326main: -> 0.0029s7327main: -- remove_foreign_key(:members, {:column=>:member_namespace_id, :name=>"fk_aa82dcc1c6"})7328main: -> 0.0040s7329main: == 20221107222213 RemoveOldMemberNamespaceIdFk: migrated (0.0095s) ============7330main: == 20221108015813 AddTelesignToApplicationSettings: migrating =================7331main: -- add_column(:application_settings, :encrypted_telesign_customer_xid, :binary)7332main: -> 0.0021s7333main: -- add_column(:application_settings, :encrypted_telesign_customer_xid_iv, :binary)7334main: -> 0.0010s7335main: -- add_column(:application_settings, :encrypted_telesign_api_key, :binary)7336main: -> 0.0010s7337main: -- add_column(:application_settings, :encrypted_telesign_api_key_iv, :binary)7338main: -> 0.0010s7339main: == 20221108015813 AddTelesignToApplicationSettings: migrated (0.0055s) ========7340main: == 20221108045019 TruncateTimelineEventTagsTable: migrating ===================7341main: -- execute("TRUNCATE TABLE incident_management_timeline_event_tags, incident_management_timeline_event_tag_links")7342main: -> 0.0023s7343main: == 20221108045019 TruncateTimelineEventTagsTable: migrated (0.0025s) ==========7344main: == 20221108121322 AddSupportingIndexForVulnerabilitiesFeedbackMigration: migrating 7345main: -- transaction_open?()7346main: -> 0.0000s7347main: -- view_exists?(:postgres_partitions)7348main: -> 0.0011s7349main: -- index_exists?(:vulnerability_feedback, [:migrated_to_state_transition, :feedback_type], {:where=>"migrated_to_state_transition = false AND feedback_type = 0", :name=>"tmp_idx_for_vulnerability_feedback_migration", :algorithm=>:concurrently})7350main: -> 0.0069s7351main: -- add_index(:vulnerability_feedback, [:migrated_to_state_transition, :feedback_type], {:where=>"migrated_to_state_transition = false AND feedback_type = 0", :name=>"tmp_idx_for_vulnerability_feedback_migration", :algorithm=>:concurrently})7352main: -> 0.0015s7353main: == 20221108121322 AddSupportingIndexForVulnerabilitiesFeedbackMigration: migrated (0.0167s) 7354main: == 20221108185442 AddProjectWikiRepositoryIdToProjectWikiRepositoryStates: migrating 7355main: -- transaction_open?()7356main: -> 0.0000s7357main: -- column_exists?(:project_wiki_repository_states, :project_wiki_repository_id)7358main: -> 0.0020s7359main: -- add_column(:project_wiki_repository_states, :project_wiki_repository_id, :bigint)7360main: -> 0.0008s7361main: -- transaction_open?()7362main: -> 0.0000s7363main: -- view_exists?(:postgres_partitions)7364main: -> 0.0009s7365main: -- index_exists?(:project_wiki_repository_states, :project_wiki_repository_id, {:name=>"idx_project_wiki_repository_states_project_wiki_repository_id", :algorithm=>:concurrently})7366main: -> 0.0041s7367main: -- add_index(:project_wiki_repository_states, :project_wiki_repository_id, {:name=>"idx_project_wiki_repository_states_project_wiki_repository_id", :algorithm=>:concurrently})7368main: -> 0.0013s7369main: -- transaction_open?()7370main: -> 0.0000s7371main: -- foreign_keys(:project_wiki_repository_states)7372main: -> 0.0031s7373main: -- transaction_open?()7374main: -> 0.0000s7375main: -- execute("ALTER TABLE project_wiki_repository_states\nADD CONSTRAINT fk_6951681c70\nFOREIGN KEY (project_wiki_repository_id)\nREFERENCES project_wiki_repositories (id)\nON DELETE CASCADE\nNOT VALID;\n")7376main: -> 0.0012s7377main: -- execute("ALTER TABLE project_wiki_repository_states VALIDATE CONSTRAINT fk_6951681c70;")7378main: -> 0.0011s7379main: == 20221108185442 AddProjectWikiRepositoryIdToProjectWikiRepositoryStates: migrated (0.0278s) 7380main: == 20221108222015 RemoveTempIndexOnProjectFeaturesWhereReleasesAccessLevelGtRepository: migrating 7381main: -- transaction_open?()7382main: -> 0.0000s7383main: -- view_exists?(:postgres_partitions)7384main: -> 0.0012s7385main: -- indexes(:project_features)7386main: -> 0.0049s7387main: -- remove_index(:project_features, {:algorithm=>:concurrently, :name=>"tmp_idx_project_features_on_releases_al_and_repo_al_partial"})7388main: -> 0.0013s7389main: == 20221108222015 RemoveTempIndexOnProjectFeaturesWhereReleasesAccessLevelGtRepository: migrated (0.0134s) 7390main: == 20221109160052 AddDefaultForApprovalProjectRulesScanners: migrating ========7391main: -- change_column_default(:approval_project_rules, :scanners, {:from=>nil, :to=>[]})7392main: -> 0.0038s7393main: == 20221109160052 AddDefaultForApprovalProjectRulesScanners: migrated (0.0040s) 7394main: == 20221110045406 SanitizeConfidentialNoteTodos: migrating ====================7395main: == 20221110045406 SanitizeConfidentialNoteTodos: migrated (0.0298s) ===========7396main: == 20221110080508 AddPartitionIdToCiUnitTestFailures: migrating ===============7397main: -- add_column(:ci_unit_test_failures, :partition_id, :bigint, {:default=>100, :null=>false})7398main: -> 0.0014s7399main: == 20221110080508 AddPartitionIdToCiUnitTestFailures: migrated (0.0017s) ======7400main: == 20221110080636 AddPartitionIdToCiSourcesPipelines: migrating ===============7401main: -- add_column(:ci_sources_pipelines, :partition_id, :bigint, {:default=>100, :null=>false})7402main: -> 0.0015s7403main: == 20221110080636 AddPartitionIdToCiSourcesPipelines: migrated (0.0017s) ======7404main: == 20221110080748 AddPartitionIdToCiBuildPendingStates: migrating =============7405main: -- add_column(:ci_build_pending_states, :partition_id, :bigint, {:default=>100, :null=>false})7406main: -> 0.0014s7407main: == 20221110080748 AddPartitionIdToCiBuildPendingStates: migrated (0.0015s) ====7408main: == 20221110080822 AddPartitionIdToCiBuildTraceChunks: migrating ===============7409main: -- add_column(:ci_build_trace_chunks, :partition_id, :bigint, {:default=>100, :null=>false})7410main: -> 0.0014s7411main: == 20221110080822 AddPartitionIdToCiBuildTraceChunks: migrated (0.0016s) ======7412main: == 20221110080913 AddPartitionIdToCiBuildReportResults: migrating =============7413main: -- add_column(:ci_build_report_results, :partition_id, :bigint, {:default=>100, :null=>false})7414main: -> 0.0013s7415main: == 20221110080913 AddPartitionIdToCiBuildReportResults: migrated (0.0015s) ====7416main: == 20221110080956 AddPartitionIdToCiBuildNeeds: migrating =====================7417main: -- add_column(:ci_build_needs, :partition_id, :bigint, {:default=>100, :null=>false})7418main: -> 0.0014s7419main: == 20221110080956 AddPartitionIdToCiBuildNeeds: migrated (0.0015s) ============7420main: == 20221110081037 AddPartitionIdToCiBuildsRunnerSession: migrating ============7421main: -- add_column(:ci_builds_runner_session, :partition_id, :bigint, {:default=>100, :null=>false})7422main: -> 0.0015s7423main: == 20221110081037 AddPartitionIdToCiBuildsRunnerSession: migrated (0.0016s) ===7424main: == 20221110081115 AddPartitionIdToCiPendingBuilds: migrating ==================7425main: -- add_column(:ci_pending_builds, :partition_id, :bigint, {:default=>100, :null=>false})7426main: -> 0.0014s7427main: == 20221110081115 AddPartitionIdToCiPendingBuilds: migrated (0.0015s) =========7428main: == 20221110081207 AddPartitionIdToCiBuildTraceMetadata: migrating =============7429main: -- add_column(:ci_build_trace_metadata, :partition_id, :bigint, {:default=>100, :null=>false})7430main: -> 0.0013s7431main: == 20221110081207 AddPartitionIdToCiBuildTraceMetadata: migrated (0.0016s) ====7432main: == 20221110081348 AddPartitionIdToCiRunningBuilds: migrating ==================7433main: -- add_column(:ci_running_builds, :partition_id, :bigint, {:default=>100, :null=>false})7434main: -> 0.0012s7435main: == 20221110081348 AddPartitionIdToCiRunningBuilds: migrated (0.0013s) =========7436main: == 20221110081448 AddPartitionIdToCiJobVariables: migrating ===================7437main: -- add_column(:ci_job_variables, :partition_id, :bigint, {:default=>100, :null=>false})7438main: -> 0.0015s7439main: == 20221110081448 AddPartitionIdToCiJobVariables: migrated (0.0016s) ==========7440main: == 20221110105857 AddIndexForInProductMarketingEmailMetrics: migrating ========7441main: -- transaction_open?()7442main: -> 0.0000s7443main: -- view_exists?(:postgres_partitions)7444main: -> 0.0010s7445main: -- index_exists?(:in_product_marketing_emails, [:track, :series, :id, :cta_clicked_at], {:name=>"index_in_product_marketing_emails_on_track_series_id_clicked", :algorithm=>:concurrently})7446main: -> 0.0037s7447main: -- add_index(:in_product_marketing_emails, [:track, :series, :id, :cta_clicked_at], {:name=>"index_in_product_marketing_emails_on_track_series_id_clicked", :algorithm=>:concurrently})7448main: -> 0.0016s7449main: == 20221110105857 AddIndexForInProductMarketingEmailMetrics: migrated (0.0132s) 7450main: == 20221110150942 AddProjectIdLowerNameIndexRemoveOldIndex: migrating =========7451main: -- transaction_open?()7452main: -> 0.0000s7453main: -- view_exists?(:postgres_partitions)7454main: -> 0.0010s7455main: -- index_exists?(:incident_management_timeline_event_tags, "project_id, LOWER(name)", {:unique=>true, :name=>"index_im_timeline_event_tags_on_lower_name_and_project_id", :algorithm=>:concurrently})7456main: -> 0.0023s7457main: -- add_index(:incident_management_timeline_event_tags, "project_id, LOWER(name)", {:unique=>true, :name=>"index_im_timeline_event_tags_on_lower_name_and_project_id", :algorithm=>:concurrently})7458main: -> 0.0014s7459main: -- transaction_open?()7460main: -> 0.0000s7461main: -- view_exists?(:postgres_partitions)7462main: -> 0.0008s7463main: -- indexes(:incident_management_timeline_event_tags)7464main: -> 0.0023s7465main: -- remove_index(:incident_management_timeline_event_tags, {:algorithm=>:concurrently, :name=>"index_im_timeline_event_tags_name_project_id"})7466main: -> 0.0011s7467main: == 20221110150942 AddProjectIdLowerNameIndexRemoveOldIndex: migrated (0.0215s) 7468main: == 20221110152133 DeleteOrphansApprovalRules: migrating =======================7469main: == 20221110152133 DeleteOrphansApprovalRules: migrated (0.0553s) ==============7470main: == 20221110183103 AddDashboardFieldsToNamespaceDetails: migrating =============7471main: -- add_column(:namespace_details, :dashboard_notification_at, :datetime_with_timezone)7472main: -> 0.0009s7473main: -- add_column(:namespace_details, :dashboard_enforcement_at, :datetime_with_timezone)7474main: -> 0.0008s7475main: == 20221110183103 AddDashboardFieldsToNamespaceDetails: migrated (0.0021s) ====7476main: == 20221110190340 AddPartialLegacyOpenSourceLicenseAvailableProjectIdIndex: migrating 7477main: -- transaction_open?()7478main: -> 0.0000s7479main: -- view_exists?(:postgres_partitions)7480main: -> 0.0013s7481main: -- index_exists?(:project_settings, :project_id, {:where=>"legacy_open_source_license_available = TRUE", :name=>"index_project_settings_on_legacy_os_license_project_id", :algorithm=>:concurrently})7482main: -> 0.0043s7483main: -- add_index(:project_settings, :project_id, {:where=>"legacy_open_source_license_available = TRUE", :name=>"index_project_settings_on_legacy_os_license_project_id", :algorithm=>:concurrently})7484main: -> 0.0018s7485main: == 20221110190340 AddPartialLegacyOpenSourceLicenseAvailableProjectIdIndex: migrated (0.0156s) 7486main: == 20221111070314 PrepareRemovalOfIssueTrigramIndexes: migrating ==============7487main: -- index_exists?(:issues, :title, {:name=>"index_issues_on_title_trigram"})7488main: -> 0.0285s7489main: -- quote_column_name("index_issues_on_title_trigram")7490main: -> 0.0001s7491main: -- index_exists?(:issues, :description, {:name=>"index_issues_on_description_trigram"})7492main: -> 0.0360s7493main: -- quote_column_name("index_issues_on_description_trigram")7494main: -> 0.0001s7495main: == 20221111070314 PrepareRemovalOfIssueTrigramIndexes: migrated (0.0735s) =====7496main: == 20221111123146 AddOnboardingInProgressToUsers: migrating ===================7497main: -- add_column(:users, :onboarding_in_progress, :boolean, {:default=>false, :null=>false})7498main: -> 0.0022s7499main: == 20221111123146 AddOnboardingInProgressToUsers: migrated (0.0025s) ==========7500main: == 20221111123147 AddOnboardingStepUrlToUserDetails: migrating ================7501main: -- add_column(:user_details, :onboarding_step_url, :text)7502main: -> 0.0010s7503main: == 20221111123147 AddOnboardingStepUrlToUserDetails: migrated (0.0013s) =======7504main: == 20221111123148 AddTextLimitToOnboardingStepUrl: migrating ==================7505main: -- transaction_open?()7506main: -> 0.0000s7507main: -- current_schema()7508main: -> 0.0007s7509main: -- transaction_open?()7510main: -> 0.0000s7511main: -- execute("ALTER TABLE user_details\nADD CONSTRAINT check_4f51129940\nCHECK ( char_length(onboarding_step_url) <= 2000 )\nNOT VALID;\n")7512main: -> 0.0009s7513main: -- current_schema()7514main: -> 0.0005s7515main: -- execute("ALTER TABLE user_details VALIDATE CONSTRAINT check_4f51129940;")7516main: -> 0.0008s7517main: == 20221111123148 AddTextLimitToOnboardingStepUrl: migrated (0.0095s) =========7518main: == 20221111135238 CreateDependencyListExportsTable: migrating =================7519main: -- create_table(:dependency_list_exports, {})7520main: -- quote_column_name(:file)7521main: -> 0.0000s7522main: -> 0.0047s7523main: == 20221111135238 CreateDependencyListExportsTable: migrated (0.0049s) ========7524main: == 20221111142921 AddHierarchyRestrictions: migrating =========================7525main: -- create_table(:work_item_hierarchy_restrictions, {})7526main: -> 0.0049s7527main: == 20221111142921 AddHierarchyRestrictions: migrated (0.0051s) ================7528main: == 20221114142044 DeleteExperimentsForeignKeys: migrating =====================7529main: -- transaction_open?()7530main: -> 0.0000s7531main: -- foreign_keys(:experiment_subjects)7532main: -> 0.0033s7533main: -- remove_foreign_key(:experiment_subjects, :users, {:name=>"fk_dfc3e211d4"})7534main: -> 0.0042s7535main: -- transaction_open?()7536main: -> 0.0000s7537main: -- foreign_keys(:experiment_subjects)7538main: -> 0.0029s7539main: -- remove_foreign_key(:experiment_subjects, :experiments, {:name=>"fk_rails_ede5754774"})7540main: -> 0.0035s7541main: -- transaction_open?()7542main: -> 0.0000s7543main: -- foreign_keys(:experiment_subjects)7544main: -> 0.0029s7545main: -- remove_foreign_key(:experiment_subjects, :projects, {:name=>"fk_ccc28f8ceb"})7546main: -> 0.0040s7547main: -- transaction_open?()7548main: -> 0.0000s7549main: -- foreign_keys(:experiment_subjects)7550main: -> 0.0031s7551main: -- remove_foreign_key(:experiment_subjects, :namespaces, {:name=>"fk_842649f2f5"})7552main: -> 0.0039s7553main: == 20221114142044 DeleteExperimentsForeignKeys: migrated (0.0386s) ============7554main: == 20221114142602 DropExperimentSubjectsTable: migrating ======================7555main: -- drop_table(:experiment_subjects, {:if_exists=>true})7556main: -> 0.0020s7557main: == 20221114142602 DropExperimentSubjectsTable: migrated (0.0022s) =============7558main: == 20221114142616 DropExperimentsTable: migrating =============================7559main: -- drop_table(:experiments, {:if_exists=>true})7560main: -> 0.0014s7561main: == 20221114142616 DropExperimentsTable: migrated (0.0017s) ====================7562main: == 20221114145103 AddLastSeatRefreshAtToGitlabSubscriptions: migrating ========7563main: -- add_column("gitlab_subscriptions", "last_seat_refresh_at", :datetime_with_timezone)7564main: -> 0.0008s7565main: == 20221114145103 AddLastSeatRefreshAtToGitlabSubscriptions: migrated (0.0009s) 7566main: == 20221114212908 AddDebugTraceToCiBuildsMetadata: migrating ==================7567main: -- add_column(:p_ci_builds_metadata, :debug_trace_enabled, :boolean, {:null=>false, :default=>false})7568main: -> 0.0016s7569main: == 20221114212908 AddDebugTraceToCiBuildsMetadata: migrated (0.0018s) =========7570main: == 20221115120602 AddIndexForIssuesHealthStatusOrdering: migrating ============7571main: -- index_exists?(:issues, [:project_id, :health_status, :id, :state_id, :issue_type], {:order=>{:health_status=>"DESC NULLS LAST", :id=>:desc}, :name=>"index_on_issues_health_status_desc_order", :algorithm=>:concurrently})7572main: -> 0.0246s7573main: -- add_index_options(:issues, [:project_id, :health_status, :id, :state_id, :issue_type], {:order=>{:health_status=>"DESC NULLS LAST", :id=>:desc}, :name=>"index_on_issues_health_status_desc_order", :algorithm=>:concurrently})7574main: -> 0.0001s7575main: -- index_exists?(:issues, [:project_id, :health_status, :id, :state_id, :issue_type], {:order=>{:health_status=>"ASC NULLS LAST", :id=>:desc}, :name=>"index_on_issues_health_status_asc_order", :algorithm=>:concurrently})7576main: -> 0.0248s7577main: -- add_index_options(:issues, [:project_id, :health_status, :id, :state_id, :issue_type], {:order=>{:health_status=>"ASC NULLS LAST", :id=>:desc}, :name=>"index_on_issues_health_status_asc_order", :algorithm=>:concurrently})7578main: -> 0.0000s7579main: == 20221115120602 AddIndexForIssuesHealthStatusOrdering: migrated (0.0616s) ===7580main: == 20221115173607 EnsureWorkItemTypeBackfillMigrationFinished: migrating ======7581main: == 20221115173607 EnsureWorkItemTypeBackfillMigrationFinished: migrated (0.1129s) 7582main: == 20221115184525 RemoveNamespacesTmpProjectIdColumn: migrating ===============7583main: -- transaction_open?()7584main: -> 0.0000s7585main: -- column_exists?(:namespaces, :tmp_project_id)7586main: -> 0.0045s7587main: -- remove_column(:namespaces, :tmp_project_id)7588main: -> 0.0022s7589main: == 20221115184525 RemoveNamespacesTmpProjectIdColumn: migrated (0.0102s) ======7590main: == 20221116100056 AddForeignKeyToDependencyListExports: migrating =============7591main: -- transaction_open?()7592main: -> 0.0001s7593main: -- foreign_keys(:dependency_list_exports)7594main: -> 0.0033s7595main: -- transaction_open?()7596main: -> 0.0000s7597main: -- execute("ALTER TABLE dependency_list_exports\nADD CONSTRAINT fk_5b3d11e1ef\nFOREIGN KEY (user_id)\nREFERENCES users (id)\nON DELETE SET NULL\nNOT VALID;\n")7598main: -> 0.0017s7599main: -- execute("ALTER TABLE dependency_list_exports VALIDATE CONSTRAINT fk_5b3d11e1ef;")7600main: -> 0.0014s7601main: -- transaction_open?()7602main: -> 0.0000s7603main: -- foreign_keys(:dependency_list_exports)7604main: -> 0.0031s7605main: -- transaction_open?()7606main: -> 0.0000s7607main: -- execute("ALTER TABLE dependency_list_exports\nADD CONSTRAINT fk_d871d74675\nFOREIGN KEY (project_id)\nREFERENCES projects (id)\nON DELETE CASCADE\nNOT VALID;\n")7608main: -> 0.0017s7609main: -- execute("ALTER TABLE dependency_list_exports VALIDATE CONSTRAINT fk_d871d74675;")7610main: -> 0.0016s7611main: == 20221116100056 AddForeignKeyToDependencyListExports: migrated (0.0202s) ====7612main: == 20221116105434 RemoveIndexProjectSettingsOnLegacyOpenSourceLicenseAvailable: migrating 7613main: -- transaction_open?()7614main: -> 0.0000s7615main: -- view_exists?(:postgres_partitions)7616main: -> 0.0012s7617main: -- indexes(:project_settings)7618main: -> 0.0047s7619main: -- remove_index(:project_settings, {:algorithm=>:concurrently, :name=>"index_project_settings_on_legacy_open_source_license_available"})7620main: -> 0.0014s7621main: == 20221116105434 RemoveIndexProjectSettingsOnLegacyOpenSourceLicenseAvailable: migrated (0.0144s) 7622main: == 20221116113323 AddIndexOnTeamIdAndChatId: migrating ========================7623main: -- transaction_open?()7624main: -> 0.0000s7625main: -- view_exists?(:postgres_partitions)7626main: -> 0.0013s7627main: -- index_exists?(:chat_names, [:team_id, :chat_id], {:name=>"index_chat_names_on_team_id_and_chat_id", :algorithm=>:concurrently})7628main: -> 0.0035s7629main: -- add_index(:chat_names, [:team_id, :chat_id], {:name=>"index_chat_names_on_team_id_and_chat_id", :algorithm=>:concurrently})7630main: -> 0.0014s7631main: == 20221116113323 AddIndexOnTeamIdAndChatId: migrated (0.0140s) ===============7632main: == 20221116124821 AddEnterpriseBooleanToBulkImports: migrating ================7633main: -- add_column(:bulk_imports, :source_enterprise, :boolean, {:default=>true, :null=>false})7634main: -> 0.0022s7635main: == 20221116124821 AddEnterpriseBooleanToBulkImports: migrated (0.0024s) =======7636main: == 20221116143854 AddOkrHierarchyRestrictions: migrating ======================7637main: == 20221116143854 AddOkrHierarchyRestrictions: migrated (0.0329s) =============7638main: == 20221116160204 CreateMlExperimentMetadataAndMlCandidateMetadata: migrating =7639main: -- create_table(:ml_experiment_metadata, {})7640main: -- quote_column_name(:name)7641main: -> 0.0000s7642main: -- quote_column_name(:value)7643main: -> 0.0000s7644main: -> 0.0050s7645main: -- create_table(:ml_candidate_metadata, {})7646main: -- quote_column_name(:name)7647main: -> 0.0000s7648main: -- quote_column_name(:value)7649main: -> 0.0000s7650main: -> 0.0048s7651main: == 20221116160204 CreateMlExperimentMetadataAndMlCandidateMetadata: migrated (0.0102s) 7652main: == 20221116161126 AddAuthSigningTypeToKeys: migrating =========================7653main: -- add_column(:keys, :usage_type, :integer, {:limit=>2, :null=>false, :default=>0})7654main: -> 0.0023s7655main: == 20221116161126 AddAuthSigningTypeToKeys: migrated (0.0025s) ================7656main: == 20221117103015 AddAsyncIndexAuthorIdCreatedAtOnMergeRequests: migrating ====7657main: -- index_exists?(:merge_requests, [:author_id, :created_at], {:name=>"index_merge_requests_on_author_id_and_created_at", :algorithm=>:concurrently})7658main: -> 0.0242s7659main: -- add_index_options(:merge_requests, [:author_id, :created_at], {:name=>"index_merge_requests_on_author_id_and_created_at", :algorithm=>:concurrently})7660main: -> 0.0001s7661main: == 20221117103015 AddAsyncIndexAuthorIdCreatedAtOnMergeRequests: migrated (0.0305s) 7662main: == 20221117135032 RemoveClustersApplicationsJobInstances: migrating ===========7663main: == 20221117135032 RemoveClustersApplicationsJobInstances: migrated (0.0134s) ==7664main: == 20221117153015 AddIndexMergeRequestIdCreatedAtOnScanFindingApprovalMergeRequestRules: migrating 7665main: -- transaction_open?()7666main: -> 0.0000s7667main: -- view_exists?(:postgres_partitions)7668main: -> 0.0012s7669main: -- index_exists?(:approval_merge_request_rules, [:merge_request_id, :created_at], {:where=>"report_type = 4", :name=>"scan_finding_approval_mr_rule_index_mr_id_and_created_at", :algorithm=>:concurrently})7670main: -> 0.0072s7671main: -- add_index(:approval_merge_request_rules, [:merge_request_id, :created_at], {:where=>"report_type = 4", :name=>"scan_finding_approval_mr_rule_index_mr_id_and_created_at", :algorithm=>:concurrently})7672main: -> 0.0016s7673main: == 20221117153015 AddIndexMergeRequestIdCreatedAtOnScanFindingApprovalMergeRequestRules: migrated (0.0173s) 7674main: == 20221118103152 FinalizeIssuesNamespaceIdBackfilling: migrating =============7675main: == 20221118103152 FinalizeIssuesNamespaceIdBackfilling: migrated (0.0150s) ====7676main: == 20221118103352 AddCascadeDeleteFkOnIssuesNamespaceId: migrating ============7677main: -- transaction_open?()7678main: -> 0.0000s7679main: -- foreign_keys(:issues)7680main: -> 0.0036s7681main: -- transaction_open?()7682main: -> 0.0000s7683main: -- execute("ALTER TABLE issues\nADD CONSTRAINT fk_c78fbacd64\nFOREIGN KEY (namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")7684main: -> 0.0016s7685main: -- execute("ALTER TABLE issues VALIDATE CONSTRAINT fk_c78fbacd64;")7686main: -> 0.0019s7687main: -- transaction_open?()7688main: -> 0.0000s7689main: -- foreign_keys(:issues)7690main: -> 0.0033s7691main: -- remove_foreign_key(:issues, {:column=>:namespace_id, :name=>"fk_6e10d4d38a"})7692main: -> 0.0044s7693main: == 20221118103352 AddCascadeDeleteFkOnIssuesNamespaceId: migrated (0.0214s) ===7694main: == 20221118103752 AddNotNullContraintToIssuesNamespaceId: migrating ===========7695main: -- current_schema()7696main: -> 0.0005s7697main: -- transaction_open?()7698main: -> 0.0000s7699main: -- current_schema()7700main: -> 0.0005s7701main: -- transaction_open?()7702main: -> 0.0000s7703main: -- execute("ALTER TABLE issues\nADD CONSTRAINT check_c33362cd43\nCHECK ( namespace_id IS NOT NULL )\nNOT VALID;\n")7704main: -> 0.0011s7705main: == 20221118103752 AddNotNullContraintToIssuesNamespaceId: migrated (0.0096s) ==7706main: == 20221118104752 ValidateNotNullContraintToIssuesNamespaceId: migrating ======7707main: -- current_schema()7708main: -> 0.0006s7709main: -- execute("ALTER TABLE issues VALIDATE CONSTRAINT check_c33362cd43;")7710main: -> 0.0010s7711main: == 20221118104752 ValidateNotNullContraintToIssuesNamespaceId: migrated (0.0040s) 7712main: == 20221121000127 IndexSecurityScansOnCreatedAtAndIdForNonPurgedRecords: migrating 7713main: -- transaction_open?()7714main: -> 0.0000s7715main: -- view_exists?(:postgres_partitions)7716main: -> 0.0012s7717main: -- index_exists?(:security_scans, ["created_at", "id"], {:where=>"status != 6", :name=>:index_security_scans_for_non_purged_records, :algorithm=>:concurrently})7718main: -> 0.0062s7719main: -- add_index(:security_scans, ["created_at", "id"], {:where=>"status != 6", :name=>:index_security_scans_for_non_purged_records, :algorithm=>:concurrently})7720main: -> 0.0017s7721main: == 20221121000127 IndexSecurityScansOnCreatedAtAndIdForNonPurgedRecords: migrated (0.0171s) 7722main: == 20221121000451 DropIndexSecurityScansOnIdForNonPurgedRecords: migrating ====7723main: -- transaction_open?()7724main: -> 0.0000s7725main: -- view_exists?(:postgres_partitions)7726main: -> 0.0023s7727main: -- indexes(:security_scans)7728main: -> 0.0064s7729main: -- remove_index(:security_scans, {:algorithm=>:concurrently, :name=>:index_security_scans_on_id_for_non_purged_records})7730main: -> 0.0013s7731main: == 20221121000451 DropIndexSecurityScansOnIdForNonPurgedRecords: migrated (0.0169s) 7732main: == 20221121091238 AddWorkItemProgress: migrating ==============================7733main: -- create_table(:work_item_progresses, {:id=>false})7734main: -> 0.0031s7735main: == 20221121091238 AddWorkItemProgress: migrated (0.0034s) =====================7736main: == 20221121100431 AddPartitionIdToCiResources: migrating ======================7737main: -- add_column(:ci_resources, :partition_id, :bigint, {:default=>100, :null=>false})7738main: -> 0.0016s7739main: == 20221121100431 AddPartitionIdToCiResources: migrated (0.0019s) =============7740main: == 20221121152048 RemoveUnusedFeedbackMigrationIndex: migrating ===============7741main: -- transaction_open?()7742main: -> 0.0000s7743main: -- view_exists?(:postgres_partitions)7744main: -> 0.0012s7745main: -- indexes(:vulnerability_feedback)7746main: -> 0.0085s7747main: -- remove_index(:vulnerability_feedback, {:algorithm=>:concurrently, :name=>"tmp_idx_for_vulnerability_feedback_migration"})7748main: -> 0.0013s7749main: == 20221121152048 RemoveUnusedFeedbackMigrationIndex: migrated (0.0185s) ======7750main: == 20221121152515 AddSupportingIndexForVulnerabilitiesFeedbackMigration2: migrating 7751main: -- transaction_open?()7752main: -> 0.0000s7753main: -- view_exists?(:postgres_partitions)7754main: -> 0.0011s7755main: -- index_exists?(:vulnerability_feedback, :id, {:where=>"migrated_to_state_transition = false AND feedback_type = 0", :name=>"tmp_idx_for_vulnerability_feedback_migration", :algorithm=>:concurrently})7756main: -> 0.0081s7757main: -- add_index(:vulnerability_feedback, :id, {:where=>"migrated_to_state_transition = false AND feedback_type = 0", :name=>"tmp_idx_for_vulnerability_feedback_migration", :algorithm=>:concurrently})7758main: -> 0.0017s7759main: == 20221121152515 AddSupportingIndexForVulnerabilitiesFeedbackMigration2: migrated (0.0189s) 7760main: == 20221121155850 ChangeVulnerabilitiesStateTransitionsCommentLimit: migrating 7761main: -- transaction_open?()7762main: -> 0.0000s7763main: -- current_schema()7764main: -> 0.0004s7765main: -- transaction_open?()7766main: -> 0.0000s7767main: -- execute("ALTER TABLE vulnerability_state_transitions\nADD CONSTRAINT check_fe2eb6a0f3\nCHECK ( char_length(comment) <= 50000 )\nNOT VALID;\n")7768main: -> 0.0009s7769main: -- current_schema()7770main: -> 0.0006s7771main: -- execute("ALTER TABLE vulnerability_state_transitions VALIDATE CONSTRAINT check_fe2eb6a0f3;")7772main: -> 0.0009s7773main: -- transaction_open?()7774main: -> 0.0000s7775main: -- transaction_open?()7776main: -> 0.0000s7777main: -- execute(" ALTER TABLE vulnerability_state_transitions\n DROP CONSTRAINT IF EXISTS check_fca4a7ca39\n")7778main: -> 0.0008s7779main: == 20221121155850 ChangeVulnerabilitiesStateTransitionsCommentLimit: migrated (0.0132s) 7780main: == 20221121180138 DropIndexOnVulnerabilitiesStateCaseId: migrating ============7781main: -- transaction_open?()7782main: -> 0.0000s7783main: -- view_exists?(:postgres_partitions)7784main: -> 0.0012s7785main: -- indexes(:vulnerabilities)7786main: -> 0.0142s7787main: -- remove_index(:vulnerabilities, {:algorithm=>:concurrently, :name=>"index_vulnerabilities_on_state_case_id"})7788main: -> 0.0015s7789main: == 20221121180138 DropIndexOnVulnerabilitiesStateCaseId: migrated (0.0242s) ===7790main: == 20221121181627 DropIndexOnVulnerabilitiesStateCaseIdDesc: migrating ========7791main: -- transaction_open?()7792main: -> 0.0000s7793main: -- view_exists?(:postgres_partitions)7794main: -> 0.0012s7795main: -- indexes(:vulnerabilities)7796main: -> 0.0144s7797main: -- remove_index(:vulnerabilities, {:algorithm=>:concurrently, :name=>"index_vulnerabilities_on_state_case_id_desc"})7798main: -> 0.0015s7799main: == 20221121181627 DropIndexOnVulnerabilitiesStateCaseIdDesc: migrated (0.0246s) 7800main: == 20221121184931 ValidateNotNullContraintOnIssuesWorkItemTypeId: migrating ===7801main: -- current_schema()7802main: -> 0.0005s7803main: -- transaction_open?()7804main: -> 0.0000s7805main: -- current_schema()7806main: -> 0.0005s7807main: -- transaction_open?()7808main: -> 0.0000s7809main: -- execute("ALTER TABLE issues\nADD CONSTRAINT check_2addf801cd\nCHECK ( work_item_type_id IS NOT NULL )\nNOT VALID;\n")7810main: -> 0.0011s7811main: -- current_schema()7812main: -> 0.0006s7813main: -- execute("ALTER TABLE issues VALIDATE CONSTRAINT check_2addf801cd;")7814main: -> 0.0010s7815main: == 20221121184931 ValidateNotNullContraintOnIssuesWorkItemTypeId: migrated (0.0141s) 7816main: == 20221122063922 RemoveIssueTitleTrigramIndex: migrating =====================7817main: -- transaction_open?()7818main: -> 0.0000s7819main: -- view_exists?(:postgres_partitions)7820main: -> 0.0014s7821main: -- indexes(:issues)7822main: -> 0.0264s7823main: -- remove_index(:issues, {:algorithm=>:concurrently, :name=>"index_issues_on_title_trigram"})7824main: -> 0.0016s7825main: == 20221122063922 RemoveIssueTitleTrigramIndex: migrated (0.0402s) ============7826main: == 20221122064537 RemoveIssueDescriptionTrigramIndex: migrating ===============7827main: -- transaction_open?()7828main: -> 0.0000s7829main: -- view_exists?(:postgres_partitions)7830main: -> 0.0014s7831main: -- indexes(:issues)7832main: -> 0.0262s7833main: -- remove_index(:issues, {:algorithm=>:concurrently, :name=>"index_issues_on_description_trigram"})7834main: -> 0.0015s7835main: == 20221122064537 RemoveIssueDescriptionTrigramIndex: migrated (0.0395s) ======7836main: == 20221122132812 SchedulePruneStaleProjectExportJobs: migrating ==============7837main: == 20221122132812 SchedulePruneStaleProjectExportJobs: migrated (0.0345s) =====7838main: == 20221122141046 AddAllowPipelineTriggerApproveDeploymentToProjectSettings: migrating 7839main: -- add_column(:project_settings, :allow_pipeline_trigger_approve_deployment, :boolean, {:default=>false, :null=>false})7840main: -> 0.0019s7841main: == 20221122141046 AddAllowPipelineTriggerApproveDeploymentToProjectSettings: migrated (0.0077s) 7842main: == 20221122155149 AddIndexForPathsOnNonProjects: migrating ====================7843main: -- index_exists?("namespaces", "(lower(path::text))", {:name=>"index_namespaces_on_path_for_top_level_non_projects", :where=>"(parent_id IS NULL AND type::text <> 'Project'::text)", :algorithm=>:concurrently})7844main: -> 0.0181s7845main: -- add_index_options("namespaces", "(lower(path::text))", {:name=>"index_namespaces_on_path_for_top_level_non_projects", :where=>"(parent_id IS NULL AND type::text <> 'Project'::text)", :algorithm=>:concurrently})7846main: -> 0.0000s7847main: == 20221122155149 AddIndexForPathsOnNonProjects: migrated (0.0254s) ===========7848main: == 20221123133054 QueueResetStatusOnContainerRepositories: migrating ==========7849main: == 20221123133054 QueueResetStatusOnContainerRepositories: migrated (0.0002s) =7850main: == 20221124153602 AddSupportingIndexForVulnerabilitiesFeedbackCommentProccessing: migrating 7851main: -- transaction_open?()7852main: -> 0.0000s7853main: -- view_exists?(:postgres_partitions)7854main: -> 0.0014s7855main: -- index_exists?(:vulnerability_feedback, :id, {:where=>"char_length(comment) > 50000", :name=>"tmp_idx_for_feedback_comment_processing", :algorithm=>:concurrently})7856main: -> 0.0112s7857main: -- add_index(:vulnerability_feedback, :id, {:where=>"char_length(comment) > 50000", :name=>"tmp_idx_for_feedback_comment_processing", :algorithm=>:concurrently})7858main: -> 0.0033s7859main: == 20221124153602 AddSupportingIndexForVulnerabilitiesFeedbackCommentProccessing: migrated (0.0294s) 7860main: == 20221125222221 AddMetricsIndexToAuthenticationEvents: migrating ============7861main: -- transaction_open?()7862main: -> 0.0000s7863main: -- view_exists?(:postgres_partitions)7864main: -> 0.0013s7865main: -- index_exists?(:authentication_events, [:user_id, :provider, :created_at], {:where=>"result = 1", :name=>"index_successful_authentication_events_for_metrics", :algorithm=>:concurrently})7866main: -> 0.0059s7867main: -- add_index(:authentication_events, [:user_id, :provider, :created_at], {:where=>"result = 1", :name=>"index_successful_authentication_events_for_metrics", :algorithm=>:concurrently})7868main: -> 0.0017s7869main: == 20221125222221 AddMetricsIndexToAuthenticationEvents: migrated (0.0196s) ===7870main: == 20221125222341 RemoveResultIndexFromAuthenticationEvents: migrating ========7871main: -- transaction_open?()7872main: -> 0.0000s7873main: -- view_exists?(:postgres_partitions)7874main: -> 0.0012s7875main: -- indexes(:authentication_events)7876main: -> 0.0049s7877main: -- remove_index(:authentication_events, {:algorithm=>:concurrently, :name=>"index_authentication_events_on_provider_user_id_created_at"})7878main: -> 0.0014s7879main: == 20221125222341 RemoveResultIndexFromAuthenticationEvents: migrated (0.0147s) 7880main: == 20221128120634 ScheduleFixingSecurityScanStatuses: migrating ===============7881main: == 20221128120634 ScheduleFixingSecurityScanStatuses: migrated (0.0033s) ======7882main: == 20221128123514 AddSourcePartitionIdToCiSourcesPipeline: migrating ==========7883main: -- add_column(:ci_sources_pipelines, :source_partition_id, :bigint, {:default=>100, :null=>false})7884main: -> 0.0018s7885main: == 20221128123514 AddSourcePartitionIdToCiSourcesPipeline: migrated (0.0021s) =7886main: == 20221128220043 DropTempWorkItemTypeIdBackfillIndex: migrating ==============7887main: -- transaction_open?()7888main: -> 0.0000s7889main: -- view_exists?(:postgres_partitions)7890main: -> 0.0012s7891main: -- indexes(:issues)7892main: -> 0.0243s7893main: -- remove_index(:issues, {:algorithm=>:concurrently, :name=>"tmp_index_issues_on_issue_type_and_id"})7894main: -> 0.0013s7895main: == 20221128220043 DropTempWorkItemTypeIdBackfillIndex: migrated (0.0348s) =====7896main: == 20221128222417 AddBackIssuesWorkItemTypeIdIndex: migrating =================7897main: -- index_exists?(:issues, :work_item_type_id, {:name=>"index_issues_on_work_item_type_id", :algorithm=>:concurrently})7898main: -> 0.0278s7899main: -- add_index_options(:issues, :work_item_type_id, {:name=>"index_issues_on_work_item_type_id", :algorithm=>:concurrently})7900main: -> 0.0001s7901main: == 20221128222417 AddBackIssuesWorkItemTypeIdIndex: migrated (0.0348s) ========7902main: == 20221129124240 RemoveFlowdockIntegrationRecords: migrating =================7903main: == 20221129124240 RemoveFlowdockIntegrationRecords: migrated (0.0027s) ========7904main: == 20221206012013 AddIndexAuthorIdCreatedAtOnMergeRequests: migrating =========7905main: -- transaction_open?()7906main: -> 0.0000s7907main: -- view_exists?(:postgres_partitions)7908main: -> 0.0012s7909main: -- index_exists?(:merge_requests, [:author_id, :created_at], {:name=>"index_merge_requests_on_author_id_and_created_at", :algorithm=>:concurrently})7910main: -> 0.0242s7911main: -- add_index(:merge_requests, [:author_id, :created_at], {:name=>"index_merge_requests_on_author_id_and_created_at", :algorithm=>:concurrently})7912main: -> 0.0018s7913main: == 20221206012013 AddIndexAuthorIdCreatedAtOnMergeRequests: migrated (0.0380s) 7914main: == 20221206075631 AddUniqueIdPartitionIdIndexToCiBuild: migrating =============7915main: -- index_exists?(:ci_builds, [:id, :partition_id], {:unique=>true, :name=>:index_ci_builds_on_id_partition_id_unique, :algorithm=>:concurrently})7916main: -> 0.0167s7917main: -- add_index_options(:ci_builds, [:id, :partition_id], {:unique=>true, :name=>:index_ci_builds_on_id_partition_id_unique, :algorithm=>:concurrently})7918main: -> 0.0001s7919main: == 20221206075631 AddUniqueIdPartitionIdIndexToCiBuild: migrated (0.0232s) ====7920main: == 20221206132610 AddUniqueTokenEncryptedPartitionIdIndexToCiBuild: migrating =7921main: -- index_exists?(:ci_builds, [:token_encrypted, :partition_id], {:where=>"token_encrypted IS NOT NULL", :unique=>true, :name=>:index_ci_builds_on_token_encrypted_partition_id_unique, :algorithm=>:concurrently})7922main: -> 0.0167s7923main: -- add_index_options(:ci_builds, [:token_encrypted, :partition_id], {:where=>"token_encrypted IS NOT NULL", :unique=>true, :name=>:index_ci_builds_on_token_encrypted_partition_id_unique, :algorithm=>:concurrently})7924main: -> 0.0000s7925main: == 20221206132610 AddUniqueTokenEncryptedPartitionIdIndexToCiBuild: migrated (0.0232s) 7926==> 'scripts/db_tasks db:migrate' succeeded in 50 seconds.7928Not uploading cache ruby-gems-debian-bullseye-ruby-2.7-16 due to policy7929Not uploading cache gitaly-ruby-gems-debian-bullseye-ruby-2.7-16 due to policy7931Job succeeded