From 64848812904b34657aa1993117033004c496e79e Mon Sep 17 00:00:00 2001 From: Zach Daniel Date: Wed, 17 Jul 2024 14:48:25 -0400 Subject: [PATCH] chore: undo change to bulk destroy omitting changeset.filter --- lib/ash/actions/destroy/bulk.ex | 6 ++++++ lib/ash/data_layer/ets/ets.ex | 8 -------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/lib/ash/actions/destroy/bulk.ex b/lib/ash/actions/destroy/bulk.ex index 66318442c..2837a857c 100644 --- a/lib/ash/actions/destroy/bulk.ex +++ b/lib/ash/actions/destroy/bulk.ex @@ -539,6 +539,7 @@ defmodule Ash.Actions.Destroy.Bulk do authorize_bulk_query(query, atomic_changeset, opts), {:ok, atomic_changeset, query} <- authorize_atomic_changeset(query, atomic_changeset, opts), + {query, atomic_changeset} <- add_changeset_filters(query, atomic_changeset), {:ok, data_layer_query} <- Ash.Query.data_layer_query(query) do case Ash.DataLayer.destroy_query( data_layer_query, @@ -752,6 +753,10 @@ defmodule Ash.Actions.Destroy.Bulk do end end + defp add_changeset_filters(query, changeset) do + {Ash.Query.do_filter(query, changeset.filter), %{changeset | filter: nil}} + end + defp set_strategy(opts, resource, inputs_is_enumerable? \\ false) do opts = if Ash.DataLayer.data_layer_can?(resource, :update_query) do @@ -1094,6 +1099,7 @@ defmodule Ash.Actions.Destroy.Bulk do resource |> Ash.Changeset.new() |> Map.put(:domain, domain) + |> Ash.Changeset.filter(opts[:filter]) |> Ash.Actions.Helpers.add_context(opts) |> Ash.Changeset.set_context(opts[:context] || %{}) |> Ash.Changeset.prepare_changeset_for_action(action, opts) diff --git a/lib/ash/data_layer/ets/ets.ex b/lib/ash/data_layer/ets/ets.ex index 6abb99a33..86f14914c 100644 --- a/lib/ash/data_layer/ets/ets.ex +++ b/lib/ash/data_layer/ets/ets.ex @@ -1235,14 +1235,6 @@ defmodule Ash.DataLayer.Ets do log_destroy_query(resource, query) query - |> Map.update!(:filter, fn filter -> - if is_nil(changeset.filter) do - filter - else - filter = filter || %Ash.Filter{resource: changeset.resource} - Ash.Filter.add_to_filter!(filter, changeset.filter) - end - end) |> run_query(resource) |> case do {:ok, results} ->