Class: Gitlab::BackgroundMigration::BackfillIssuesCorrectWorkItemTypeId
- Inherits:
-
BatchedMigrationJob
- Object
- BatchedMigrationJob
- Gitlab::BackgroundMigration::BackfillIssuesCorrectWorkItemTypeId
- Defined in:
- lib/gitlab/background_migration/backfill_issues_correct_work_item_type_id.rb
Constant Summary
Constants inherited from BatchedMigrationJob
Gitlab::BackgroundMigration::BatchedMigrationJob::DEFAULT_FEATURE_CATEGORY
Constants included from Database::DynamicModelHelpers
Database::DynamicModelHelpers::BATCH_SIZE
Instance Method Summary collapse
Methods inherited from BatchedMigrationJob
#batch_metrics, cursor, cursor?, cursor_columns, feature_category, #filter_batch, generic_instance, #initialize, job_arguments, job_arguments_count, operation_name, scope_to
Methods included from Database::DynamicModelHelpers
#define_batchable_model, #each_batch, #each_batch_range
Constructor Details
This class inherits a constructor from Gitlab::BackgroundMigration::BatchedMigrationJob
Instance Method Details
#perform ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/gitlab/background_migration/backfill_issues_correct_work_item_type_id.rb', line 9 def perform each_sub_batch do |sub_batch| first, last = sub_batch.pick(Arel.sql('min(id), max(id)')) connection.execute( <<~SQL UPDATE "issues" SET "correct_work_item_type_id" = "work_item_types"."correct_id", "author_id_convert_to_bigint" = "issues"."author_id", "closed_by_id_convert_to_bigint" = "issues"."closed_by_id", "duplicated_to_id_convert_to_bigint" = "issues"."duplicated_to_id", "id_convert_to_bigint" = "issues"."id", "last_edited_by_id_convert_to_bigint" = "issues"."last_edited_by_id", "milestone_id_convert_to_bigint" = "issues"."milestone_id", "moved_to_id_convert_to_bigint" = "issues"."moved_to_id", "project_id_convert_to_bigint" = "issues"."project_id", "promoted_to_epic_id_convert_to_bigint" = "issues"."promoted_to_epic_id", "updated_by_id_convert_to_bigint" = "issues"."updated_by_id" FROM "work_item_types" WHERE "issues"."work_item_type_id" = "work_item_types"."id" AND "issues"."id" BETWEEN #{first} AND #{last} SQL ) end end |