From 4afda5444a3cc864cb0f9a4f59493022d8a5e080 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 27 Nov 2018 13:56:25 +0100 Subject: Change identities id column to a bigint (#9371) * fix: change Identity's id column to a bigint This appears to be the last model created using a 5.0 migration, where column types defaulted to `integer` rather than `bigint`. This migration changes the column type to match that of all of the other ID columns. * Change user_id column in identities to bigint and fix down-migration --- db/migrate/20181127130500_identity_id_to_bigint.rb | 27 ++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 db/migrate/20181127130500_identity_id_to_bigint.rb (limited to 'db/migrate') diff --git a/db/migrate/20181127130500_identity_id_to_bigint.rb b/db/migrate/20181127130500_identity_id_to_bigint.rb new file mode 100644 index 000000000..5f388aca7 --- /dev/null +++ b/db/migrate/20181127130500_identity_id_to_bigint.rb @@ -0,0 +1,27 @@ +require Rails.root.join('lib', 'mastodon', 'migration_helpers') + +class IdentityIdToBigint < ActiveRecord::Migration[5.2] + include Mastodon::MigrationHelpers + + disable_ddl_transaction! + + def up + safety_assured do + change_column_type_concurrently :identities, :id, :bigint + cleanup_concurrent_column_type_change :identities, :id + + change_column_type_concurrently :identities, :user_id, :bigint + cleanup_concurrent_column_type_change :identities, :user_id + end + end + + def down + safety_assured do + change_column_type_concurrently :identities, :id, :integer + cleanup_concurrent_column_type_change :identities, :id + + change_column_type_concurrently :identities, :user_id, :integer + cleanup_concurrent_column_type_change :identities, :user_id + end + end +end -- cgit