diff options
author | Felipe Artur <felipefac@gmail.com> | 2016-09-30 11:53:44 -0300 |
---|---|---|
committer | Felipe Artur <felipefac@gmail.com> | 2016-10-03 19:58:49 -0300 |
commit | 45bfadbcbf0eec5bf7c691b13751f684e3c62c5c (patch) | |
tree | 43d22923083a11c4395cde44629b242b38df50fc /app/models/merge_request.rb | |
parent | a1aea3266e4b90869d5a9bcc334272996ab80fda (diff) | |
download | gitlab-ce-45bfadbcbf0eec5bf7c691b13751f684e3c62c5c.tar.gz |
Fix bug when trying to cache closed issues from external issue trackersissue_22446
Diffstat (limited to 'app/models/merge_request.rb')
-rw-r--r-- | app/models/merge_request.rb | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index a431d46cc9e..071dfe54ef9 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -523,9 +523,13 @@ class MergeRequest < ActiveRecord::Base # `MergeRequestsClosingIssues` model. This is a performance optimization. # Calculating this information for a number of merge requests requires # running `ReferenceExtractor` on each of them separately. + # This optimization does not apply to issues from external sources. def cache_merge_request_closes_issues!(current_user = self.author) + return if project.has_external_issue_tracker? + transaction do self.merge_requests_closing_issues.delete_all + closes_issues(current_user).each do |issue| self.merge_requests_closing_issues.create!(issue: issue) end |