mirror of
https://github.com/discourse/discourse.git
synced 2025-02-26 02:28:40 +08:00

This is a follow-up to e6299a3. I additionally fixed these three things: 1. Since e6299a3 there's no need anymore to join the group_users table when looking for users who were reached by a group mention, so I removed that join in that commit. But turned out we were joining the group_users table twice, so I removed the second join in this PR. That drastically speeded up my test query, from 6 sec to 0.26 sec. 2. We also were joining twice the user_chat_channel_memebership table, so I removed the second unnecessary join too. 3. We actually need to join the user_chat_channel_memebership table only in certain cases, and we don't need to do that for group mentions, so I fixed that too. As a result of these changes, time of my test query fall down from 6 sec to 0.001 sec. And the resulting SQL query now contains only one JOIN statement.