BigW Consortium Gitlab

Commit 110a5f9c by Kamil Trzciński

Merge branch 'fix-migration' into 'master'

Fix ci_projects migration by using the value only from latest row [ci skip] This is needed, because for some projects we have duplicate ci_projects. This was introduced by lack of DB uniqueness on ci_projects.gitlab_id. The MR fixes edge case by selecting value from latest. /cc @yorickpeterse Fixes: gitlab-org/gitlab-ce#4123 See merge request !2133
parents 61a1bdd7 e136a976
...@@ -26,7 +26,8 @@ class MigrateCiToProject < ActiveRecord::Migration ...@@ -26,7 +26,8 @@ class MigrateCiToProject < ActiveRecord::Migration
def migrate_project_column(column, new_column = nil) def migrate_project_column(column, new_column = nil)
new_column ||= column new_column ||= column
subquery = "SELECT ci_projects.#{column} FROM ci_projects WHERE projects.id = ci_projects.gitlab_id" subquery = "SELECT ci_projects.#{column} FROM ci_projects WHERE projects.id = ci_projects.gitlab_id " \
'ORDER BY ci_projects.updated_at DESC LIMIT 1'
execute("UPDATE projects SET #{new_column}=(#{subquery}) WHERE (#{subquery}) IS NOT NULL") execute("UPDATE projects SET #{new_column}=(#{subquery}) WHERE (#{subquery}) IS NOT NULL")
end end
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment