diff options
author | ThibG <thib@sitedethib.com> | 2020-09-29 10:29:42 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-29 10:29:42 +0200 |
commit | 62e3f588dee75fc6a37457f8218630daad056cba (patch) | |
tree | 69439eebc4da7137206ee82e6ec3fa21cf8c7ed0 /db/post_migrate | |
parent | 787d5d728923393f12421a480b3c7aee789a11fe (diff) | |
parent | ccfc2b6dce4bfda283bb6bc968a23fe4a76951d7 (diff) |
Merge pull request #1430 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'db/post_migrate')
-rw-r--r-- | db/post_migrate/20200917193528_migrate_notifications_type.rb | 22 | ||||
-rw-r--r-- | db/post_migrate/20200917222734_remove_index_notifications_on_account_activity.rb | 15 |
2 files changed, 37 insertions, 0 deletions
diff --git a/db/post_migrate/20200917193528_migrate_notifications_type.rb b/db/post_migrate/20200917193528_migrate_notifications_type.rb new file mode 100644 index 000000000..88e423084 --- /dev/null +++ b/db/post_migrate/20200917193528_migrate_notifications_type.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +class MigrateNotificationsType < ActiveRecord::Migration[5.2] + disable_ddl_transaction! + + TYPES_TO_MIGRATE = { + 'Mention' => :mention, + 'Status' => :reblog, + 'Follow' => :follow, + 'FollowRequest' => :follow_request, + 'Favourite' => :favourite, + 'Poll' => :poll, + }.freeze + + def up + TYPES_TO_MIGRATE.each_pair do |activity_type, type| + Notification.where(activity_type: activity_type, type: nil).in_batches.update_all(type: type) + end + end + + def down; end +end diff --git a/db/post_migrate/20200917222734_remove_index_notifications_on_account_activity.rb b/db/post_migrate/20200917222734_remove_index_notifications_on_account_activity.rb new file mode 100644 index 000000000..cb7f78e53 --- /dev/null +++ b/db/post_migrate/20200917222734_remove_index_notifications_on_account_activity.rb @@ -0,0 +1,15 @@ +# frozen_string_literal: true + +class RemoveIndexNotificationsOnAccountActivity < ActiveRecord::Migration[5.2] + disable_ddl_transaction! + + def up + remove_index :notifications, name: :account_activity + remove_index :notifications, name: :index_notifications_on_account_id_and_id + end + + def down + add_index :notifications, [:account_id, :activity_id, :activity_type], unique: true, name: 'account_activity', algorithm: :concurrently + add_index :notifications, [:account_id, :id], order: { id: :desc }, algorithm: :concurrently + end +end |