Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'db/migrate/20180420010016_add_pipeline_build_foreign_key.rb')
-rw-r--r--db/migrate/20180420010016_add_pipeline_build_foreign_key.rb7
1 files changed, 5 insertions, 2 deletions
diff --git a/db/migrate/20180420010016_add_pipeline_build_foreign_key.rb b/db/migrate/20180420010016_add_pipeline_build_foreign_key.rb
index 385d51b8da6..7fcd3b20d5e 100644
--- a/db/migrate/20180420010016_add_pipeline_build_foreign_key.rb
+++ b/db/migrate/20180420010016_add_pipeline_build_foreign_key.rb
@@ -7,12 +7,15 @@ class AddPipelineBuildForeignKey < ActiveRecord::Migration
def up
execute <<~SQL
+ DELETE FROM ci_builds WHERE project_id IS NULL OR commit_id IS NULL
+ SQL
+
+ execute <<~SQL
DELETE FROM ci_builds WHERE NOT EXISTS
(SELECT true FROM ci_pipelines WHERE ci_pipelines.id = ci_builds.commit_id)
+ AND commit_id IS NOT NULL
SQL
- return if foreign_key_exists?(:ci_builds, :ci_pipelines, column: :commit_id)
-
add_concurrent_foreign_key(:ci_builds, :ci_pipelines, column: :commit_id)
end