mirror of
https://gh.wpcy.net/https://github.com/discourse/discourse.git
synced 2026-05-02 19:44:59 +08:00
Why this change?
Follow up to f880f1a42f. When adding an
index concurrently where the database transaction is disabled, we have
to ensure that we drop the index first if it exists because an invalid
index can be created if the migration has failed before.
13 lines
336 B
Ruby
13 lines
336 B
Ruby
# frozen_string_literal: true
|
|
class TopicIdOnIncomingEmailIndex < ActiveRecord::Migration[7.0]
|
|
disable_ddl_transaction!
|
|
|
|
def up
|
|
remove_index :incoming_emails, :topic_id, if_exists: true
|
|
add_index :incoming_emails, :topic_id, algorithm: :concurrently
|
|
end
|
|
|
|
def down
|
|
raise ActiveRecord::IrreversibleMigration
|
|
end
|
|
end
|