From 461542784b555237316f3dd5e32ea224cd3ab8ef Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Tue, 29 May 2018 22:55:33 +0200 Subject: Reduce wasted work in RemoveStatusService due to inactive followers (#7672) --- app/models/concerns/account_interactions.rb | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'app/models/concerns/account_interactions.rb') diff --git a/app/models/concerns/account_interactions.rb b/app/models/concerns/account_interactions.rb index ae43711be..ef59f5d15 100644 --- a/app/models/concerns/account_interactions.rb +++ b/app/models/concerns/account_interactions.rb @@ -183,4 +183,15 @@ module AccountInteractions def pinned?(status) status_pins.where(status: status).exists? end + + def followers_for_local_distribution + followers.local + .joins(:user) + .where('users.current_sign_in_at > ?', User::ACTIVE_DURATION.ago) + end + + def lists_for_local_distribution + lists.joins(account: :user) + .where('users.current_sign_in_at > ?', User::ACTIVE_DURATION.ago) + end end -- cgit