summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKrasimir Angelov <kangelov@gitlab.com>2019-08-21 10:30:20 +0300
committerKrasimir Angelov <kangelov@gitlab.com>2019-09-03 15:39:33 +1200
commit346c4296e792da509536bec6db9531729673037a (patch)
treedebfb82431b4da6c1a1466ec088879a56f820d59
parent24a01c8802628bff2ef5326b80384806a474a365 (diff)
downloadgitlab-ce-346c4296e792da509536bec6db9531729673037a.tar.gz
Improve Project#migrate_project_pages_metadata method
- Use `select` with multiple arguments - Do nothing on conlflict when inserting records
-rw-r--r--app/models/project.rb3
1 files changed, 2 insertions, 1 deletions
diff --git a/app/models/project.rb b/app/models/project.rb
index 78b73e7be9c..e2ba21225c6 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -612,13 +612,14 @@ class Project < ApplicationRecord
.to_sql
select_from = project_pages_metadata_not_migrated
- .select("projects.id, COALESCE((#{successful_pages_deploy}), FALSE)")
+ .select("projects.id", "COALESCE((#{successful_pages_deploy}), FALSE)")
.to_sql
connection_pool.with_connection do |connection|
connection.execute <<~INSERT_SQL
INSERT INTO project_pages_metadata (project_id, deployed)
#{select_from}
+ ON CONFLICT (project_id) DO NOTHING
INSERT_SQL
end
end