Deprecate transparency_exclusions
[akkoma] / priv / repo / migrations / 20190118074940_fix_user_trigram_index.exs
index 4f7712eb02269387e8465a3c1ca6cec6e7772de9..b0d272802dba2beecea8b96366f19469a9025f59 100644 (file)
@@ -2,12 +2,21 @@ defmodule Pleroma.Repo.Migrations.FixUserTrigramIndex do
   use Ecto.Migration
 
   def up do
-    drop_if_exists index(:users, [], name: :users_trigram_index)
-    create index(:users, ["(trim(nickname || ' ' || name)) gist_trgm_ops"], name: :users_trigram_index, using: :gist)
+    drop_if_exists(index(:users, [], name: :users_trigram_index))
+
+    create_if_not_exists(
+      index(:users, ["(trim(nickname || ' ' || coalesce(name, ''))) gist_trgm_ops"],
+        name: :users_trigram_index,
+        using: :gist
+      )
+    )
   end
 
   def down do
-    drop_if_exists index(:users, [], name: :users_trigram_index)
-    create index(:users, ["(nickname || name) gist_trgm_ops"], name: :users_trigram_index, using: :gist)
+    drop_if_exists(index(:users, [], name: :users_trigram_index))
+
+    create_if_not_exists(
+      index(:users, ["(nickname || name) gist_trgm_ops"], name: :users_trigram_index, using: :gist)
+    )
   end
 end