First
[anni] / priv / repo / migrations / 20190118074940_fix_user_trigram_index.exs
1 # Pleroma: A lightweight social networking server
2 # Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
3 # SPDX-License-Identifier: AGPL-3.0-only
4
5 defmodule Pleroma.Repo.Migrations.FixUserTrigramIndex do
6   use Ecto.Migration
7
8   def up do
9     drop_if_exists(index(:users, [], name: :users_trigram_index))
10
11     create_if_not_exists(
12       index(:users, ["(trim(nickname || ' ' || coalesce(name, ''))) gist_trgm_ops"],
13         name: :users_trigram_index,
14         using: :gist
15       )
16     )
17   end
18
19   def down do
20     drop_if_exists(index(:users, [], name: :users_trigram_index))
21
22     create_if_not_exists(
23       index(:users, ["(nickname || name) gist_trgm_ops"], name: :users_trigram_index, using: :gist)
24     )
25   end
26 end