about summary refs log tree commit diff
path: root/db/migrate
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2018-10-26 23:08:34 +0200
committerGitHub <noreply@github.com>2018-10-26 23:08:34 +0200
commiteef8d9a5f7d07bf785c6a7184e01374e211c6d7f (patch)
tree2f0fa19750c33e94ac060540be04eda694d5f495 /db/migrate
parent6e1a4f85ad96b25087d98fed1e70044c0f45a132 (diff)
Add locality check to ActivityPub::FetchRemoteAccountService (#9109)
* Add locality check to ActivityPub::FetchRemoteAccountService

Fix #8643

Because there are a few places where it is called, it is difficult
to confirm if they all previously checked it for locality. It's better
to make sure within the service.

* Remove faux-remote duplicates of local accounts
Diffstat (limited to 'db/migrate')
-rw-r--r--db/migrate/20181026034033_remove_faux_remote_account_duplicates.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/db/migrate/20181026034033_remove_faux_remote_account_duplicates.rb b/db/migrate/20181026034033_remove_faux_remote_account_duplicates.rb
new file mode 100644
index 000000000..bd4f4c2a3
--- /dev/null
+++ b/db/migrate/20181026034033_remove_faux_remote_account_duplicates.rb
@@ -0,0 +1,16 @@
+class RemoveFauxRemoteAccountDuplicates < ActiveRecord::Migration[5.2]
+  disable_ddl_transaction!
+
+  def up
+    local_domain = Rails.configuration.x.local_domain
+
+    # Just a safety measure to ensure that under no circumstance
+    # we will query `domain IS NULL` because that would return
+    # actually local accounts, the originals
+    return if local_domain.nil?
+
+    Account.where(domain: local_domain).in_batches.destroy_all
+  end
+
+  def down; end
+end