You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
catstodon/db/migrate/20200407202420_migrate_unav...

23 lines
518 B
Ruby

class MigrateUnavailableInboxes < ActiveRecord::Migration[5.2]
disable_ddl_transaction!
def up
redis = RedisConfiguration.pool.checkout
urls = redis.smembers('unavailable_inboxes')
hosts = urls.map do |url|
Addressable::URI.parse(url).normalized_host
end.compact.uniq
UnavailableDomain.delete_all
hosts.each do |host|
UnavailableDomain.create(domain: host)
end
redis.del(*(['unavailable_inboxes'] + redis.keys('exhausted_deliveries:*')))
end
def down; end
end