summaryrefslogtreecommitdiff
path: root/app/models/project.rb
diff options
context:
space:
mode:
authorZeger-Jan van de Weg <zegerjan@gitlab.com>2016-03-15 19:13:26 +0100
committerZeger-Jan van de Weg <zegerjan@gitlab.com>2016-03-15 19:16:16 +0100
commit59064aeeef8562a87d4d03efa9b11012a007e261 (patch)
tree1ecb34e1355a4eb714615b2a9c2727155e8f3ec9 /app/models/project.rb
parentaaf4434b0e24da916d4392aa9cd001cdb8e0c7dc (diff)
parentbc590ce63bd2f1af5545b648e6d028a557e7c792 (diff)
downloadgitlab-ce-4009-external-users.tar.gz
Merge branch 'master' into 4009-external-users4009-external-users
Diffstat (limited to 'app/models/project.rb')
-rw-r--r--app/models/project.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/app/models/project.rb b/app/models/project.rb
index cc877b9af74..ab4913e99a8 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -280,7 +280,14 @@ class Project < ActiveRecord::Base
or(ptable[:description].matches(pattern))
)
+ # We explicitly remove any eager loading clauses as they're:
+ #
+ # 1. Not needed by this query
+ # 2. Combined with .joins(:namespace) lead to all columns from the
+ # projects & namespaces tables being selected, leading to a SQL error
+ # due to the columns of all UNION'd queries no longer being the same.
namespaces = select(:id).
+ except(:includes).
joins(:namespace).
where(ntable[:name].matches(pattern))
@@ -502,6 +509,7 @@ class Project < ActiveRecord::Base
end
def external_issue_tracker
+ return @external_issue_tracker if defined?(@external_issue_tracker)
@external_issue_tracker ||=
services.issue_trackers.active.without_defaults.first
end