From 28bf71e77ec114c73bd3719e8bd1d6ae9d7ef0ca Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Mon, 16 Aug 2021 14:58:22 +0100 Subject: [PATCH] Fix N+1 in CachedEnterpriseSerializer --- app/serializers/api/cached_enterprise_serializer.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/serializers/api/cached_enterprise_serializer.rb b/app/serializers/api/cached_enterprise_serializer.rb index cec5388204..f3e4700284 100644 --- a/app/serializers/api/cached_enterprise_serializer.rb +++ b/app/serializers/api/cached_enterprise_serializer.rb @@ -163,7 +163,11 @@ module Api private def product_properties - enterprise.supplied_products.flat_map(&:properties) + Spree::Property.joins(:product_properties).where( + spree_product_properties: { + product_id: enterprise.supplied_product_ids + } + ).select('DISTINCT spree_properties.*') end def producer_properties