Use disable_ddl_transaction! to prevent warnings on migration (#6183)

Migration is wrapped by transaction, so manual `commit_db_transaction` without transaction restarting causes "there is no transaction in progress" warnings. We should use `disable_ddl_transaction!` instead, if we can omit transaction completely.
This commit is contained in:
unarist 2018-01-05 03:38:29 +09:00 committed by Eugen Rochko
parent 7571c37c99
commit 7347d4f8bb
2 changed files with 4 additions and 2 deletions

View file

@ -1,6 +1,7 @@
class AddIndexOnStreamEntries < ActiveRecord::Migration[5.1] class AddIndexOnStreamEntries < ActiveRecord::Migration[5.1]
disable_ddl_transaction!
def change def change
commit_db_transaction
add_index :stream_entries, [:account_id, :activity_type, :id], algorithm: :concurrently add_index :stream_entries, [:account_id, :activity_type, :id], algorithm: :concurrently
remove_index :stream_entries, name: :index_stream_entries_on_account_id remove_index :stream_entries, name: :index_stream_entries_on_account_id
end end

View file

@ -1,6 +1,7 @@
class MoreFasterIndexOnNotifications < ActiveRecord::Migration[5.1] class MoreFasterIndexOnNotifications < ActiveRecord::Migration[5.1]
disable_ddl_transaction!
def change def change
commit_db_transaction
add_index :notifications, [:account_id, :id], order: { id: :desc }, algorithm: :concurrently add_index :notifications, [:account_id, :id], order: { id: :desc }, algorithm: :concurrently
remove_index :notifications, name: :index_notifications_on_id_and_account_id_and_activity_type remove_index :notifications, name: :index_notifications_on_id_and_account_id_and_activity_type
end end