debian-mirror-gitlab/db/post_migrate/20220802204737_remove_deactivated_user_highest_role_stats.rb
2022-08-27 11:52:29 +05:30

28 lines
843 B
Ruby

# frozen_string_literal: true
class RemoveDeactivatedUserHighestRoleStats < Gitlab::Database::Migration[2.0]
disable_ddl_transaction!
restrict_gitlab_migration gitlab_schema: :gitlab_main
def up
# This migration is applicable to self-managed instances that may utilize the
# dormant user deactivation feature. This feature is not enabled on Gitlab.com.
return if Gitlab.com?
users_table = define_batchable_model('users')
user_highest_roles_table = define_batchable_model('user_highest_roles')
users_table.where(state: 'deactivated').each_batch do |users_batch|
user_ids = users_batch.pluck(:id)
user_highest_roles_table.where(user_id: user_ids).delete_all
end
end
def down
# no-op
# This migration removes entries from the UserHighestRole table and cannot be reversed
end
end