summaryrefslogtreecommitdiff
path: root/priv
diff options
context:
space:
mode:
authorlain <lain@soykaf.club>2019-02-04 23:47:29 +0100
committerlain <lain@soykaf.club>2019-02-04 23:47:29 +0100
commitf3c8b02d65f6abc8263c73c10c9028606bfe6894 (patch)
tree47e7b3466e2c71e9b3cbcbba49e25bf29227045a /priv
parent89762ad23034668f7440c9fb238dcf270e8c2e59 (diff)
downloadpleroma-f3c8b02d65f6abc8263c73c10c9028606bfe6894.tar.gz
pleroma-f3c8b02d65f6abc8263c73c10c9028606bfe6894.zip
Massage index until it actually does the stuff we want.
Also makes the index a lot smoler.
Diffstat (limited to 'priv')
-rw-r--r--priv/repo/migrations/20190204200237_add_correct_dm_index.exs30
1 files changed, 30 insertions, 0 deletions
diff --git a/priv/repo/migrations/20190204200237_add_correct_dm_index.exs b/priv/repo/migrations/20190204200237_add_correct_dm_index.exs
new file mode 100644
index 000000000..558732cd2
--- /dev/null
+++ b/priv/repo/migrations/20190204200237_add_correct_dm_index.exs
@@ -0,0 +1,30 @@
+defmodule Pleroma.Repo.Migrations.AddCorrectDMIndex do
+ use Ecto.Migration
+ @disable_ddl_transaction true
+
+ def up do
+ drop_if_exists(
+ index(:activities, ["activity_visibility(actor, recipients, data)"],
+ name: :activities_visibility_index
+ )
+ )
+
+ create(
+ index(:activities, ["activity_visibility(actor, recipients, data)", "id DESC NULLS LAST"],
+ name: :activities_visibility_index,
+ concurrently: true,
+ where: "data->>'type' = 'Create'"
+ )
+ )
+ end
+
+ def down do
+ drop(
+ index(:activities, ["activity_visibility(actor, recipients, data)", "id DESC"],
+ name: :activities_visibility_index,
+ concurrently: true,
+ where: "data->>'type' = 'Create'"
+ )
+ )
+ end
+end