summaryrefslogtreecommitdiff
path: root/db/post_migrate/20200710102418_delete_user_callout_alerts_moved.rb
diff options
context:
space:
mode:
Diffstat (limited to 'db/post_migrate/20200710102418_delete_user_callout_alerts_moved.rb')
-rw-r--r--db/post_migrate/20200710102418_delete_user_callout_alerts_moved.rb28
1 files changed, 28 insertions, 0 deletions
diff --git a/db/post_migrate/20200710102418_delete_user_callout_alerts_moved.rb b/db/post_migrate/20200710102418_delete_user_callout_alerts_moved.rb
new file mode 100644
index 00000000000..e14cd7ac3ee
--- /dev/null
+++ b/db/post_migrate/20200710102418_delete_user_callout_alerts_moved.rb
@@ -0,0 +1,28 @@
+# frozen_string_literal: true
+
+class DeleteUserCalloutAlertsMoved < ActiveRecord::Migration[6.0]
+ include Gitlab::Database::MigrationHelpers
+
+ DOWNTIME = false
+
+ class UserCallout < ActiveRecord::Base
+ include EachBatch
+
+ self.table_name = 'user_callouts'
+ end
+
+ BATCH_SIZE = 1_000
+
+ # Inlined from UserCalloutEnums.feature_names
+ FEATURE_NAME_ALERTS_MOVED = 20
+
+ def up
+ UserCallout.each_batch(of: BATCH_SIZE, column: :user_id) do |callout|
+ callout.where(feature_name: FEATURE_NAME_ALERTS_MOVED).delete_all
+ end
+ end
+
+ def down
+ # no-op
+ end
+end