mastodon/app/lib
Claire 45903ae80a Fix some RedisLocks auto-releasing too fast (#16276)
* Fix Delete and Create-related locks expiring too fast

Fixes #16238

By default, RedisLock expires after 10 seconds, which may not be enough to
process statuses, especially when those have attached media files.

This commit extends those 10 seconds to 15 minutes, which should be plenty
enough to handle any status, while being short enough to not waste many
sidekiq job retries in the exceedingly rare case in which a sidekiq process
would crash when processing a `Create` or `Delete`.

* Fix other RedisLock autorelease durations

Fixes #15645

- things that only perform a few simple database queries (e.g. finding and
  saving a record) have been left unchanged, so they'll still use the default
  10s duration
- things that perform significantly more complex database queries have been
  changed to a 5 minutes timeout
- things that perform multiple HTTP queries have been changed to a 15 minutes
  timeout
2021-05-19 23:52:08 +02:00
..
activitypub Fix some RedisLocks auto-releasing too fast (#16276) 2021-05-19 23:52:08 +02:00
admin Fix SidekiqProcessCheck checking for a queue name that isn't used in Mastodon (#16002) 2021-04-05 23:41:37 +02:00
connection_pool Add request pool to improve delivery performance (#10353) 2019-07-02 00:34:38 +02:00
nodeinfo Add a nodeinfo endpoint (#12002) 2019-09-29 21:31:51 +02:00
ostatus Remove Atom feeds and old URLs in the form of `GET /:username/updates/:id` (#11247) 2019-07-07 16:16:51 +02:00
proof_provider Fix rubocop warning (#14288) 2020-07-14 19:05:07 +02:00
rss Improve RSS entries for statuses (#13592) 2020-05-10 09:50:54 +02:00
settings Update Mastodon to Rails 6.1 (#15910) 2021-03-24 10:44:31 +01:00
access_token_extension.rb Fix streaming API allowing connections to persist after access token invalidation (#15111) 2020-11-12 23:05:24 +01:00
account_reach_finder.rb Fix remote reporters not receiving suspend/unsuspend activities (#16050) 2021-04-17 14:55:46 +02:00
activity_tracker.rb Add a nodeinfo endpoint (#12002) 2019-09-29 21:31:51 +02:00
application_extension.rb Fix app name, website and redirect URIs not having a maximum length (#16042) 2021-04-15 16:28:43 +02:00
cache_buster.rb Add cache buster feature for media files (#15155) 2020-11-19 17:38:06 +01:00
delivery_failure_tracker.rb Add management of delivery availability in Federation settings (#15771) 2021-05-05 23:39:02 +02:00
entity_cache.rb Fix cache_collection crashing when given an empty collection (#15921) 2021-03-18 00:41:32 +01:00
extractor.rb Update twitter-text from 1.14 to 3.1.0 and fix toot character counting (#15382) 2021-03-02 12:02:56 +01:00
fast_geometry_parser.rb Fix avatar and header issues by using custom geometry detector (#6515) 2018-02-21 03:40:12 +01:00
fast_ip_map.rb Add IP-based rules (#14963) 2020-10-12 16:33:49 +02:00
feed_manager.rb Fix blocking someone not clearing up list feeds (#16205) 2021-05-10 17:31:55 +02:00
formatter.rb Fix an error with 'multiple mentions with same username' (#16038) 2021-04-14 15:48:49 +02:00
hash_object.rb
inline_renderer.rb Add E2EE API (#13820) 2020-06-02 19:24:53 +02:00
language_detector.rb Fix URL scanning in note length validator and preview card fetching (#15827) 2021-03-04 00:12:26 +01:00
potential_friendship_tracker.rb Change auto-following admin-selected accounts, show in recommendations (#16078) 2021-04-24 17:01:43 +02:00
proof_provider.rb Add Keybase integration (#10297) 2019-03-18 21:00:55 +01:00
rate_limiter.rb Add rate limit for reporting (#13390) 2020-04-05 14:40:08 +02:00
request.rb Optimize some regex matching (#15528) 2021-01-22 10:09:08 +01:00
request_pool.rb Add request pool to improve delivery performance (#10353) 2019-07-02 00:34:38 +02:00
response_with_limit.rb Fix remote files not using Content-Type header, streaming (#14184) 2020-06-30 23:58:02 +02:00
rss_builder.rb Add RSS feeds for end-users (#7259) 2018-04-25 02:10:02 +02:00
search_query_parser.rb Fix accounts search by full/partial display name and others (#11580) 2019-08-16 13:00:30 +02:00
search_query_transformer.rb Fix error when searching for empty phrase (#12711) 2019-12-30 18:30:24 +01:00
sidekiq_error_handler.rb Bump rubocop from 0.86.0 to 0.88.0 (#14412) 2020-09-01 03:04:00 +02:00
status_filter.rb Fix n+1 queries in StatusThreadingConcern (#7321) 2018-05-03 10:41:58 +02:00
status_finder.rb Remove Atom feeds and old URLs in the form of `GET /:username/updates/:id` (#11247) 2019-07-07 16:16:51 +02:00
status_reach_finder.rb Fix nil error when removing status caused by race condition (#16099) 2021-04-24 13:35:39 +02:00
tag_manager.rb Change multiple mentions with same username to render with domain (#15718) 2021-04-10 11:51:02 +02:00
themes.rb Add support for multiple themes (#4959) 2017-09-19 16:36:23 +02:00
toc_generator.rb Add fallback section ID with ToC (#11941) 2019-09-23 17:25:10 +02:00
user_settings_decorator.rb Add option to disable swiping motions across the WebUI (#13885) 2020-09-30 19:31:03 +02:00
validation_error_formatter.rb Add `details` to error response for `POST /api/v1/accounts` in REST API (#15803) 2021-03-01 04:59:13 +01:00
video_metadata_extractor.rb Fix media processing getting stuck on too much stdin/stderr (#16136) 2021-05-05 19:44:01 +02:00
webfinger.rb replace all instances of "ends_with?" with "end_with?" (#15745) 2021-02-19 09:56:14 +01:00
webfinger_resource.rb Fix webfinger returning wrong status code on malformed or missing param (#13759) 2020-05-14 23:28:06 +02:00