From 92609b33ead973347d23c14358dfe0f85bf83910 Mon Sep 17 00:00:00 2001 From: Zach Daniel Date: Mon, 9 May 2022 17:46:17 -0400 Subject: [PATCH] fix: merge calculations when merging loads closes #309 --- lib/ash/query/query.ex | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/ash/query/query.ex b/lib/ash/query/query.ex index b38919a9..9277b965 100644 --- a/lib/ash/query/query.ex +++ b/lib/ash/query/query.ex @@ -2136,10 +2136,14 @@ defmodule Ash.Query do defp merge_load(left, []), do: sanitize_loads(left) defp merge_load( - %__MODULE__{load: left_loads, tenant: left_tenant}, - %__MODULE__{load: right_loads} = query + %__MODULE__{load: left_loads, calculations: left_calculations, tenant: left_tenant}, + %__MODULE__{load: right_loads, calculations: right_calculations} = query ) do - %{query | load: merge_load(left_loads, right_loads)} + %{ + query + | load: merge_load(left_loads, right_loads), + calculations: Map.merge(left_calculations, right_calculations) + } |> set_tenant(query.tenant || left_tenant) end