mastodon/app/controllers
Akihiko Odaki 41eeb9ebaa
Use Status.group instead of Status.distinct in HashQueryService (#14662)
DISTINCT clause removes duplicated records according to all the selected
attributes. In reality, it can remove duplicated records only looking at
statuses.id, but the clause confuses the query planner and yields
insufficient performance.
The behavior is also problematic if the scope produced by HashQueryService
is used to query columns without id (using pluck method, for example). The
scope is expected to contain unique statuses, but the uniquness will be
evaluated with some arbitrary columns other than id.

GROUP BY clause resolves those problem by explicitly specifying the
column to take into account for the record distinction.

A workaround for the problem of DISTINCT clause in
Api::V1::Timelines::TagController is no longer necessary and removed.
2020-08-25 13:39:35 +02:00
..
activitypub Add E2EE API (#13820) 2020-06-02 19:24:53 +02:00
admin Improve email address validation (#14565) 2020-08-12 12:40:25 +02:00
api Use Status.group instead of Status.distinct in HashQueryService (#14662) 2020-08-25 13:39:35 +02:00
auth Add WebAuthn as an alternative 2FA method (#14466) 2020-08-24 16:46:27 +02:00
concerns Add support for latest HTTP Signatures spec draft (#14556) 2020-08-24 18:21:07 +02:00
oauth Fix settings pages being cacheable by the browser (#12714) 2019-12-30 04:38:30 +01:00
settings Add WebAuthn as an alternative 2FA method (#14466) 2020-08-24 16:46:27 +02:00
well_known Fix webfinger returning wrong status code on malformed or missing param (#13759) 2020-05-14 23:28:06 +02:00
about_controller.rb Add table of contents to about page (#11885) 2019-09-19 11:09:05 +02:00
account_follow_controller.rb Add specific rate limits for posting and following (#13172) 2020-03-08 15:17:39 +01:00
account_unfollow_controller.rb Restful refactor of accounts/ routes (#2133) 2017-04-19 13:52:37 +02:00
accounts_controller.rb Fix functional user requirements in whitelist mode (#14093) 2020-06-19 19:18:47 +02:00
application_controller.rb Fix RSS feeds not being cachable (#14368) 2020-07-22 11:44:02 +02:00
authorize_interactions_controller.rb Add specific rate limits for posting and following (#13172) 2020-03-08 15:17:39 +01:00
custom_css_controller.rb Fix redirecting non-functional accounts on public pages (#11978) 2019-09-28 01:33:27 +02:00
directories_controller.rb Fix functional user requirements in whitelist mode (#14093) 2020-06-19 19:18:47 +02:00
emojis_controller.rb Add (back) rails-level JSON caching (#11333) 2019-07-21 22:32:16 +02:00
filters_controller.rb Fix missing authentication call in filters controller (#12746) 2020-01-03 05:29:08 +01:00
follower_accounts_controller.rb Fix functional user requirements in whitelist mode (#14093) 2020-06-19 19:18:47 +02:00
following_accounts_controller.rb Fix functional user requirements in whitelist mode (#14093) 2020-06-19 19:18:47 +02:00
home_controller.rb Fix other sessions not being logged out on password change (#14252) 2020-07-07 15:26:31 +02:00
instance_actors_controller.rb Fix reverse-proxy caching of instance actor object (#11561) 2019-08-13 15:30:37 +02:00
intents_controller.rb Refactor controllers for statuses, accounts, and more (#11249) 2019-07-08 12:03:45 +02:00
invites_controller.rb Add invite comments (#10465) 2019-08-19 11:40:42 +02:00
manifests_controller.rb Fix redirecting non-functional accounts on public pages (#11978) 2019-09-28 01:33:27 +02:00
media_controller.rb Fix functional user requirements in whitelist mode (#14093) 2020-06-19 19:18:47 +02:00
media_proxy_controller.rb Fix media attachments enumeration (#14254) 2020-07-07 15:26:51 +02:00
public_timelines_controller.rb Fix blurhash and autoplay not working on public pages (#11585) 2019-08-16 19:15:05 +02:00
relationships_controller.rb Change followers page to relationships page in admin UI (#12927) 2020-01-23 20:33:20 +01:00
remote_follow_controller.rb Fix redirecting non-functional accounts on public pages (#11978) 2019-09-28 01:33:27 +02:00
remote_interaction_controller.rb Fix functional user requirements in whitelist mode (#14093) 2020-06-19 19:18:47 +02:00
shares_controller.rb Fix blurhash and autoplay not working on public pages (#11585) 2019-08-16 19:15:05 +02:00
statuses_controller.rb Fix functional user requirements in whitelist mode (#14093) 2020-06-19 19:18:47 +02:00
tags_controller.rb Fix rubocop warning (#14288) 2020-07-14 19:05:07 +02:00