From 872ef82f4d957a7cd19aa17b0200d1cc8cfb034b Mon Sep 17 00:00:00 2001 From: Guo Xiang Tan Date: Mon, 17 Aug 2020 14:58:47 +0800 Subject: [PATCH] Revert "PERF: Prefer joins over subquery for `User#private_posts_for_user`." This reverts commit 05b43e5ae45fed10742de0829e579880098adcf7. --- app/models/post.rb | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/app/models/post.rb b/app/models/post.rb index afaea02b881..e07a78f8410 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -80,10 +80,7 @@ class Post < ActiveRecord::Base register_custom_field_type(MISSING_UPLOADS_IGNORED, :boolean) scope :private_posts_for_user, ->(user) { - joins("LEFT JOIN topic_allowed_users ON topic_allowed_users.topic_id = posts.topic_id AND topic_allowed_users.user_id = #{user.id.to_i}") - .joins("LEFT JOIN group_users ON group_users.user_id = #{user.id.to_i}") - .joins("LEFT JOIN topic_allowed_groups ON topic_allowed_groups.topic_id = posts.topic_id AND topic_allowed_groups.group_id = group_users.group_id") - .where("topic_allowed_users.topic_id IS NOT NULL OR topic_allowed_groups.topic_id IS NOT NULL") + where("posts.topic_id IN (#{Topic::PRIVATE_MESSAGES_SQL})", user_id: user.id) } scope :by_newest, -> { order('created_at DESC, id DESC') }