summaryrefslogtreecommitdiff
path: root/app/models/project.rb
diff options
context:
space:
mode:
authorJacob Vosmaer <jacob@gitlab.com>2019-04-20 13:27:53 +0000
committerStan Hu <stanhu@gmail.com>2019-04-20 13:27:53 +0000
commita02e22438de38e4eca64e45c324af10626b3975c (patch)
treee4b6118887e52c14e9c8847de7eb9b1cb38b523e /app/models/project.rb
parent9c2b37d7c4621f8284530565fa1d361b12502715 (diff)
downloadgitlab-ce-a02e22438de38e4eca64e45c324af10626b3975c.tar.gz
Fix wrong use of ActiveRecord in PoolRepository
Diffstat (limited to 'app/models/project.rb')
-rw-r--r--app/models/project.rb8
1 files changed, 3 insertions, 5 deletions
diff --git a/app/models/project.rb b/app/models/project.rb
index 2fb6f5cb6a7..b7a10b3547a 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -2131,13 +2131,11 @@ class Project < ApplicationRecord
end
def create_new_pool_repository
- pool = begin
- create_pool_repository!(shard: Shard.by_name(repository_storage), source_project: self)
- rescue ActiveRecord::RecordNotUnique
- pool_repository(true)
- end
+ pool = PoolRepository.safe_find_or_create_by!(shard: Shard.by_name(repository_storage), source_project: self)
+ update!(pool_repository: pool)
pool.schedule unless pool.scheduled?
+
pool
end