improvement: add config :ash, disable_async?: true

This commit is contained in:
Zach Daniel 2021-09-08 22:55:22 -04:00
parent c7cfa878e7
commit 64ec412e5d

View file

@ -491,10 +491,11 @@ defmodule Ash.Engine do
end
defp split_local_async_requests(requests) do
if Enum.any?(requests, fn request ->
Ash.DataLayer.data_layer_can?(request.resource, :transact) &&
Ash.DataLayer.in_transaction?(request.resource)
end) do
if Application.get_env(:ash, :disable_async?) ||
Enum.any?(requests, fn request ->
Ash.DataLayer.data_layer_can?(request.resource, :transact) &&
Ash.DataLayer.in_transaction?(request.resource)
end) do
{requests, []}
else
{local, async} = Enum.split_with(requests, &must_be_local?/1)