Class: Gitlab::BackgroundMigration::SyncMergeRequestsStateId

Inherits:
Object
  • Object
show all
Defined in:
lib/gitlab/background_migration/sync_merge_requests_state_id.rb

Instance Method Summary collapse

Instance Method Details

#perform(start_id, end_id) ⇒ Object


7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/gitlab/background_migration/sync_merge_requests_state_id.rb', line 7

def perform(start_id, end_id)
  ActiveRecord::Base.connection.execute <<~SQL
    UPDATE merge_requests
    SET state_id =
      CASE state
      WHEN 'opened' THEN 1
      WHEN 'closed' THEN 2
      WHEN 'merged' THEN 3
      WHEN 'locked' THEN 4
      END
    WHERE state_id IS NULL
    AND id BETWEEN #{start_id} AND #{end_id}
  SQL
end