defmodule Mobilizon.Repo.Migrations.AddPrimaryKeyToMember do use Ecto.Migration def up do execute("ALTER TABLE members DROP CONSTRAINT IF EXISTS members_pkey") drop_if_exists(index(:members, ["members_account_id_index"])) create( unique_index(:members, [:actor_id, :parent_id], name: :members_actor_parent_unique_index) ) alter table(:members) do add(:id, :serial, primary_key: true) end end def down do drop(index(:members, [:actor_id, :parent_id], name: :members_actor_parent_unique_index)) alter table(:members) do remove(:id) end end end