From 1afbe083fda12907fbe48b42e658243103c7721b Mon Sep 17 00:00:00 2001
From: Eugen Rochko <eugen@zeonfederated.com>
Date: Wed, 18 Dec 2019 19:04:43 +0100
Subject: [PATCH] Fix unsafe column type change in migration (#12653)

---
 .../20191212003415_increase_backup_size.rb       | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/db/migrate/20191212003415_increase_backup_size.rb b/db/migrate/20191212003415_increase_backup_size.rb
index 782c67db1..a5192263c 100644
--- a/db/migrate/20191212003415_increase_backup_size.rb
+++ b/db/migrate/20191212003415_increase_backup_size.rb
@@ -1,9 +1,21 @@
+require Rails.root.join('lib', 'mastodon', 'migration_helpers')
+
 class IncreaseBackupSize < ActiveRecord::Migration[5.2]
+  include Mastodon::MigrationHelpers
+
+  disable_ddl_transaction!
+
   def up
-    change_column :backups, :dump_file_size, :bigint
+    safety_assured do
+      change_column_type_concurrently :backups, :dump_file_size, :bigint
+      cleanup_concurrent_column_type_change :backups, :dump_file_size
+    end
   end
 
   def down
-    change_column :backups, :dump_file_size, :integer
+    safety_assured do
+      change_column_type_concurrently :backups, :dump_file_size, :integer
+      cleanup_concurrent_column_type_change :backups, :dump_file_size
+    end
   end
 end