diff options
author | Shinya Maeda <shinya@gitlab.com> | 2018-06-12 07:13:03 +0300 |
---|---|---|
committer | Shinya Maeda <shinya@gitlab.com> | 2018-06-12 07:13:03 +0300 |
commit | d7a3180d06e7b16728d4f23b1e68007c9c2f3b9a (patch) | |
tree | d111815ee462b6dd0b29af9c158d7d1abc24f505 /app/workers | |
parent | 644529590a263f8db215d288c2f59abbe632a09b (diff) | |
parent | 26c9d71666d0350b17431a75d8c31d0316bd7220 (diff) |
Merge branch 'master' into build-chunks-on-object-storage
Diffstat (limited to 'app/workers')
-rw-r--r-- | app/workers/storage_migrator_worker.rb | 25 |
1 files changed, 2 insertions, 23 deletions
diff --git a/app/workers/storage_migrator_worker.rb b/app/workers/storage_migrator_worker.rb index f92421a667d..0aff0c4c7c6 100644 --- a/app/workers/storage_migrator_worker.rb +++ b/app/workers/storage_migrator_worker.rb @@ -1,29 +1,8 @@ class StorageMigratorWorker include ApplicationWorker - BATCH_SIZE = 100 - def perform(start, finish) - projects = build_relation(start, finish) - - projects.with_route.find_each(batch_size: BATCH_SIZE) do |project| - Rails.logger.info "Starting storage migration of #{project.full_path} (ID=#{project.id})..." - - begin - project.migrate_to_hashed_storage! - rescue => err - Rails.logger.error("#{err.message} migrating storage of #{project.full_path} (ID=#{project.id}), trace - #{err.backtrace}") - end - end - end - - def build_relation(start, finish) - relation = Project - table = Project.arel_table - - relation = relation.where(table[:id].gteq(start)) if start - relation = relation.where(table[:id].lteq(finish)) if finish - - relation + migrator = Gitlab::HashedStorage::Migrator.new + migrator.bulk_migrate(start, finish) end end |