Commit Graph

8 Commits

Author SHA1 Message Date
5dc3173ef8 Fix AccountsStatusesCleanupScheduler not spreading deletes across accounts correctly (#24607) 2023-04-23 22:25:40 +02:00
501d6197c4 Change automatic post deletion thresholds and load detection (#24614) 2023-04-21 18:14:19 +02:00
20b80c62ff Change auto-deletion throttling constants to better scale with server size (#23320) 2023-02-23 16:52:40 +01:00
717683d1c3 Autofix Rubocop remaining Layout rules (#23679) 2023-02-20 06:58:28 +01:00
21bf326356 Autofix Rubocop Rails/Pluck (#23730) 2023-02-20 02:28:40 +01:00
3917353645 Fix single Redis connection being used across all threads (#18135)
* Fix single Redis connection being used across all Sidekiq threads

* Fix tests
2022-04-28 17:47:34 +02:00
52c1b86964 Fix Ruby 2.5 incompatibility (#17465) 2022-02-07 19:57:06 +01:00
4ac78e2a06 Add feature to automatically delete old toots (#16529)
* Add account statuses cleanup policy model

* Record last inspected toot to delete to speed up successive calls to statuses_to_delete

* Add service to cleanup a given account's statuses within a budget

* Add worker to go through account policies and delete old toots

* Fix last inspected status id logic

All existing statuses older or equal to last inspected status id must be
kept by the current policy. This is an invariant that must be kept so that
resuming deletion from the last inspected status remains sound.

* Add tests

* Refactor scheduler and add tests

* Add user interface

* Add support for discriminating based on boosts/favs

* Add UI support for min_reblogs and min_favs, rework UI

* Address first round of review comments

* Replace Snowflake#id_at_start with with_random parameter

* Add tests

* Add tests for StatusesCleanupController

* Rework settings page

* Adjust load-avoiding mechanisms

* Please CodeClimate
2021-08-09 23:11:50 +02:00