X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/da1614ac6d9b1b2aeba6267b304ce70c1726b608..a32c4f9997a0c8941b62668c5e59941985359c05:/services/api/db/migrate/20140423132913_add_object_owner_to_logs.rb?ds=sidebyside diff --git a/services/api/db/migrate/20140423132913_add_object_owner_to_logs.rb b/services/api/db/migrate/20140423132913_add_object_owner_to_logs.rb index 7fa47028d0..61724f2748 100644 --- a/services/api/db/migrate/20140423132913_add_object_owner_to_logs.rb +++ b/services/api/db/migrate/20140423132913_add_object_owner_to_logs.rb @@ -4,13 +4,19 @@ class AddObjectOwnerToLogs < ActiveRecord::Migration def up add_column :logs, :object_owner_uuid, :string act_as_system_user do - Log.all.each do |log| - if log.properties[:new_attributes] - log.object_owner_uuid = log.properties[:new_attributes][:owner_uuid] - elsif log.properties[:old_attributes] - log.object_owner_uuid = log.properties[:old_attributes][:owner_uuid] + Log.find_in_batches(:batch_size => 500) do |batch| + upd = {} + ActiveRecord::Base.transaction do + batch.each do |log| + if log.properties["new_attributes"] + log.object_owner_uuid = log.properties['new_attributes']['owner_uuid'] + log.save + elsif log.properties["old_attributes"] + log.object_owner_uuid = log.properties['old_attributes']['owner_uuid'] + log.save + end + end end - log.save! end end end