summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYorick Peterse <yorickpeterse@gmail.com>2016-01-07 15:34:37 +0100
committerYorick Peterse <yorickpeterse@gmail.com>2016-01-07 15:34:37 +0100
commit19a0db30ba14cb07a8f542abec56bd9cb2fa417f (patch)
treeff1d05894beaddab5ae00256076d070facbd98d5
parent9b0c360bd5f8dd0538ecb5ffcb39da9a618b0231 (diff)
downloadgitlab-ce-group-issues-sorting.tar.gz
Removed ORDER BY in "of_group" scopesgroup-issues-sorting
These scopes don't care about the order. Removing the explicit "ORDER BY" can speed up the queries by a little bit.
-rw-r--r--app/models/issue.rb4
-rw-r--r--app/models/merge_request.rb2
2 files changed, 4 insertions, 2 deletions
diff --git a/app/models/issue.rb b/app/models/issue.rb
index 21cc2105161..f52e47f3e62 100644
--- a/app/models/issue.rb
+++ b/app/models/issue.rb
@@ -33,7 +33,9 @@ class Issue < ActiveRecord::Base
belongs_to :project
validates :project, presence: true
- scope :of_group, ->(group) { where(project_id: group.projects.select(:id)) }
+ scope :of_group,
+ ->(group) { where(project_id: group.projects.select(:id).reorder(nil)) }
+
scope :cared, ->(user) { where(assignee_id: user) }
scope :open_for, ->(user) { opened.assigned_to(user) }
diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb
index 3c41bebc807..4e685ad3b7c 100644
--- a/app/models/merge_request.rb
+++ b/app/models/merge_request.rb
@@ -131,7 +131,7 @@ class MergeRequest < ActiveRecord::Base
validate :validate_branches
validate :validate_fork
- scope :of_group, ->(group) { where("source_project_id in (:group_project_ids) OR target_project_id in (:group_project_ids)", group_project_ids: group.projects.select(:id)) }
+ scope :of_group, ->(group) { where("source_project_id in (:group_project_ids) OR target_project_id in (:group_project_ids)", group_project_ids: group.projects.select(:id).reorder(nil)) }
scope :by_branch, ->(branch_name) { where("(source_branch LIKE :branch) OR (target_branch LIKE :branch)", branch: branch_name) }
scope :cared, ->(user) { where('assignee_id = :user OR author_id = :user', user: user.id) }
scope :by_milestone, ->(milestone) { where(milestone_id: milestone) }