pleroma/priv/repo/migrations/20180221210540_make_following_postgres_array.exs

26 lines
606 B
Elixir
Raw Normal View History

2022-02-25 22:11:42 -08:00
# Pleroma: A lightweight social networking server
# Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only
2018-02-21 13:20:29 -08:00
defmodule Pleroma.Repo.Migrations.MakeFollowingPostgresArray do
use Ecto.Migration
2019-06-30 18:08:07 -07:00
def up do
2018-02-21 13:20:29 -08:00
alter table(:users) do
2019-10-08 05:16:39 -07:00
add(:following_temp, {:array, :string})
2018-02-21 13:20:29 -08:00
end
2019-10-08 05:16:39 -07:00
execute("""
2018-02-21 13:20:29 -08:00
update users set following_temp = array(select jsonb_array_elements_text(following));
2019-10-08 05:16:39 -07:00
""")
2018-02-21 13:20:29 -08:00
alter table(:users) do
2019-10-08 05:16:39 -07:00
remove(:following)
2018-02-21 13:20:29 -08:00
end
2019-10-08 05:16:39 -07:00
rename(table(:users), :following_temp, to: :following)
2018-02-21 13:20:29 -08:00
end
2019-06-30 18:08:07 -07:00
def down, do: :ok
2018-02-21 13:20:29 -08:00
end