From: abcang Date: Sun, 31 Jan 2021 20:24:17 +0000 (+0900) Subject: Fix N+1 query when rendering with StatusSerializer (#15641) X-Git-Url: https://git.xn--scling-oua.cat.family/?a=commitdiff_plain;h=c8c764dd8b168ec876918d16b3f25280893d20dc;p=mastodon.git Fix N+1 query when rendering with StatusSerializer (#15641) --- diff --git a/app/models/status.rb b/app/models/status.rb index fcc7a026d..74e81f612 100644 --- a/app/models/status.rb +++ b/app/models/status.rb @@ -114,7 +114,7 @@ class Status < ApplicationRecord :tags, :preview_cards, :preloadable_poll, - account: :account_stat, + account: [:account_stat, :user], active_mentions: { account: :account_stat }, reblog: [ :application, @@ -124,7 +124,7 @@ class Status < ApplicationRecord :conversation, :status_stat, :preloadable_poll, - account: :account_stat, + account: [:account_stat, :user], active_mentions: { account: :account_stat }, ], thread: { account: :account_stat } @@ -301,7 +301,7 @@ class Status < ApplicationRecord return if account_ids.empty? - accounts = Account.where(id: account_ids).includes(:account_stat).index_by(&:id) + accounts = Account.where(id: account_ids).includes(:account_stat, :user).index_by(&:id) cached_items.each do |item| item.account = accounts[item.account_id]