remove Repo.isolated_transaction/2

This commit is contained in:
byte[] 2020-09-06 12:39:53 -04:00
parent da1e6a145d
commit 2913da2692

View file

@ -1,27 +1,7 @@
defmodule Philomena.Repo do
alias Ecto.Multi
use Ecto.Repo,
otp_app: :philomena,
adapter: Ecto.Adapters.Postgres
use Scrivener, page_size: 250
@levels %{
read_committed: "READ COMMITTED",
repeatable_read: "REPEATABLE READ",
serializable: "SERIALIZABLE"
}
def isolated_transaction(%Multi{} = multi, level) do
Multi.append(
Multi.new()
|> Multi.run(:isolate, fn repo, _chg ->
repo.query!("SET TRANSACTION ISOLATION LEVEL #{@levels[level]}")
{:ok, nil}
end),
multi
)
|> Philomena.Repo.transaction()
end
end