Commit fba2ec45 authored by Lin Jen-Shin's avatar Lin Jen-Shin

Just use order(id: :desc) for latest stuffs:

We don't need that subquery for group by ref and alike here.
parent 1a41cb90
...@@ -16,7 +16,7 @@ module Ci ...@@ -16,7 +16,7 @@ module Ci
scope :with_expired_artifacts, ->() { with_artifacts.where('artifacts_expire_at < ?', Time.now) } scope :with_expired_artifacts, ->() { with_artifacts.where('artifacts_expire_at < ?', Time.now) }
scope :last_month, ->() { where('created_at > ?', Date.today - 1.month) } scope :last_month, ->() { where('created_at > ?', Date.today - 1.month) }
scope :latest_success_with_artifacts, ->() do scope :latest_success_with_artifacts, ->() do
with_artifacts.success.latest with_artifacts.success.order(id: :desc)
end end
mount_uploader :artifacts_file, ArtifactUploader mount_uploader :artifacts_file, ArtifactUploader
......
...@@ -20,14 +20,6 @@ module Ci ...@@ -20,14 +20,6 @@ module Ci
after_touch :update_state after_touch :update_state
after_save :keep_around_commits after_save :keep_around_commits
scope :latest, -> do
max_id = unscope(:select).
select("max(#{table_name}.id)").
group(:ref)
where(id: max_id)
end
def self.truncate_sha(sha) def self.truncate_sha(sha)
sha[0...8] sha[0...8]
end end
......
...@@ -431,7 +431,7 @@ class Project < ActiveRecord::Base ...@@ -431,7 +431,7 @@ class Project < ActiveRecord::Base
# ref can't be HEAD or SHA, can only be branch/tag name # ref can't be HEAD or SHA, can only be branch/tag name
def latest_success_pipeline_for(ref = 'master') def latest_success_pipeline_for(ref = 'master')
pipelines.where(ref: ref).success.latest pipelines.where(ref: ref).success.order(id: :desc)
end end
# ref can't be HEAD or SHA, can only be branch/tag name # ref can't be HEAD or SHA, can only be branch/tag name
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment