This repository has been archived on 2024-07-22. You can view files and clone it, but cannot push or open issues or pull requests.
mastodon/app/services
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 customizable thumbnails for audio and video attachments (#14145) 2020-06-29 13:56:55 +02:00
concerns Fix activity not being signed (#13948) 2020-06-03 08:33:30 +02:00
keys Add E2EE API (#13820) 2020-06-02 19:24:53 +02:00
account_search_service.rb Fix following restriction not working when exact match in account search (#14394) 2020-07-26 23:58:36 +02:00
after_block_domain_from_account_service.rb Fix account domain block not properly unfollowing accounts from domain (#14304) 2020-07-13 19:33:10 +02:00
after_block_service.rb
after_unallow_domain_service.rb Fix removing allowed domains being done synchronously (#14302) 2020-07-15 21:08:19 +02:00
app_sign_up_service.rb Add `reason` param to `POST /api/v1/accounts` REST API (#12064) 2019-10-03 17:50:59 +02:00
authorize_follow_service.rb
backup_service.rb Add E2EE API (#13820) 2020-06-02 19:24:53 +02:00
base_service.rb
batched_remove_status_service.rb Fix not publishing update of remote timeline (#13745) 2020-05-12 15:24:35 +02:00
block_domain_service.rb Make domain block/silence/reject-media code more robust (#13424) 2020-06-09 10:32:00 +02:00
block_service.rb
bootstrap_timeline_service.rb Admin setting to disable default follows (#12566) 2019-12-16 23:55:50 +01:00
clear_domain_media_service.rb Make domain block/silence/reject-media code more robust (#13424) 2020-06-09 10:32:00 +02:00
deliver_to_device_service.rb Add E2EE API (#13820) 2020-06-02 19:24:53 +02:00
fan_out_on_write_service.rb Fix not publishing update of remote timeline (#13745) 2020-05-12 15:24:35 +02:00
favourite_service.rb
fetch_link_card_service.rb Change User-Agent of link preview fetching service to include "Bot" (#14248) 2020-07-07 10:55:18 +02:00
fetch_oembed_service.rb Fix link crawler not specifying accepted content-type (#12646) 2019-12-18 16:56:06 +01:00
fetch_remote_status_service.rb Fix an error when ActivityPub::FetchRemoteStatusService url is called with nil (#12652) 2019-12-18 16:54:03 +01:00
fetch_resource_service.rb Fix not being able to resolve public resources in development environment (#13505) 2020-04-25 22:01:08 +02:00
follow_service.rb Add specific rate limits for posting and following (#13172) 2020-03-08 15:17:39 +01:00
hashtag_query_service.rb Use Status.group instead of Status.distinct in HashQueryService (#14662) 2020-08-25 13:39:35 +02:00
import_service.rb Fix performance of follow import (#13836) 2020-06-09 10:26:58 +02:00
move_service.rb Fix account migration not affecting followers on origin server (#11980) 2019-09-29 16:23:13 +02:00
mute_service.rb
notify_service.rb Add follow_request notification type (#12198) 2019-12-01 17:25:29 +01:00
post_status_service.rb Fix media not being marked sensitive when client sets a CW but no text (#13277) 2020-03-25 22:40:58 +01:00
precompute_feed_service.rb
process_hashtags_service.rb
process_mentions_service.rb Fix duplicate notification and delivery of mentions (#14378) 2020-07-23 15:41:49 +02:00
reblog_service.rb Add E2EE API (#13820) 2020-06-02 19:24:53 +02:00
reject_follow_service.rb
remove_status_service.rb Fix not publishing update of remote timeline (#13745) 2020-05-12 15:24:35 +02:00
report_service.rb
resolve_account_service.rb Fix performance of follow import (#13836) 2020-06-09 10:26:58 +02:00
resolve_url_service.rb Fix some timeouts when searching URLs by limiting some database queries (#13253) 2020-03-12 23:06:43 +01:00
search_service.rb Fix hashtag search performing account search as well (#13758) 2020-05-14 23:37:37 +02:00
suspend_account_service.rb Change deletes to preserve soft-deleted statuses in unresolved reports (#11805) 2019-09-11 16:32:44 +02:00
tag_search_service.rb Add `exclude_unreviewed` param to `GET /api/v2/search` REST API (#11977) 2019-09-28 01:02:21 +02:00
unallow_domain_service.rb Fix removing allowed domains being done synchronously (#14302) 2020-07-15 21:08:19 +02:00
unblock_domain_service.rb
unblock_service.rb
unfavourite_service.rb
unfollow_service.rb Fix Move handler queuing jobs that will fail if account is suspended (#11864) 2019-09-17 08:44:45 +02:00
unmute_service.rb
update_account_service.rb Fix movie width and frame_rate returning nil (#14357) 2020-07-19 22:28:27 +02:00
verify_link_service.rb
vote_service.rb Fix invalid votes from the API being accepted (#12601) 2020-01-12 14:17:03 +01:00