Browse Source

Add post-deployment migration script to delete public-boosts-of-private-toots (#10783)

pull/4/head
ThibG 4 years ago
committed by Eugen Rochko
parent
commit
4edf5213dc
2 changed files with 24 additions and 1 deletions
  1. +23
    -0
      db/post_migrate/20190519130537_remove_boosts_widening_audience.rb
  2. +1
    -1
      db/schema.rb

+ 23
- 0
db/post_migrate/20190519130537_remove_boosts_widening_audience.rb View File

@ -0,0 +1,23 @@
class RemoveBoostsWideningAudience < ActiveRecord::Migration[5.2]
disable_ddl_transaction!
def up
public_boosts = Status.find_by_sql(<<-SQL)
SELECT boost.id
FROM statuses AS boost
LEFT JOIN statuses AS boosted ON boost.reblog_of_id = boosted.id
WHERE
boost.id > 101746055577600000
AND (boost.local = TRUE OR boost.uri IS NULL)
AND boost.visibility IN (0, 1)
AND boost.reblog_of_id IS NOT NULL
AND boosted.visibility = 2
SQL
RemovalWorker.push_bulk(public_boosts.pluck(:id))
end
def down
raise ActiveRecord::IrreversibleMigration
end
end

+ 1
- 1
db/schema.rb View File

@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema.define(version: 2019_05_11_152737) do
ActiveRecord::Schema.define(version: 2019_05_19_130537) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"

Loading…
Cancel
Save