Skip to content
Snippets Groups Projects
Commit d953f176 authored by Grzegorz Bizon's avatar Grzegorz Bizon
Browse files

Improve readability of build stage id migration query

parent 01128b13
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -5,12 +5,13 @@ module Gitlab
raise ArgumentError unless id.present?
 
sql = <<-SQL.strip_heredoc
UPDATE "ci_builds" SET "stage_id" = (
SELECT id FROM ci_stages
WHERE ci_stages.pipeline_id = ci_builds.commit_id
AND ci_stages.name = ci_builds.stage
)
WHERE "ci_builds"."id" = #{id} AND "ci_builds"."stage_id" IS NULL
UPDATE "ci_builds"
SET "stage_id" =
(SELECT id FROM ci_stages
WHERE ci_stages.pipeline_id = ci_builds.commit_id
AND ci_stages.name = ci_builds.stage)
WHERE "ci_builds"."id" = #{id}
AND "ci_builds"."stage_id" IS NULL
SQL
 
ActiveRecord::Base.connection.execute(sql)
Loading
Loading
Loading
Loading
@@ -58,11 +58,11 @@ describe MigrateStageIdReferenceInBackground, :migration, :sidekiq do
 
it 'schedules background migrations' do
Sidekiq::Testing.inline! do
expect(jobs.where(stage_id: nil)).to be_present
expect(jobs.where(stage_id: nil).count).to eq 5
 
migrate!
 
expect(jobs.where(stage_id: nil)).to be_one
expect(jobs.where(stage_id: nil).count).to eq 1
end
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment