pleroma/test/pleroma
Mark Felder 77dca7c3e5 Refactor ReachabilityWorker to use a 5-phase reachability testing approach
It will check reachability for an instance deemed unreachable at the following intervals:

4 attempts, once a minute
4 attempts, once every 15 minutes
4 attempts, once every 60 minutes
4 attempts, once every 8 hours
4 attempts, once every 24 hours

This should be effective and respectful of the resources of instances on the fediverse.

We have the Oban Pruner plugin enabled to keep the Oban Jobs table from growing indefinitely. It prunes every 15 minutes, but this will interfere with our ability to enforce uniqueness on the ReachabilityWorker jobs for a time period longer than 15 minutes. The solution is to exclude the ReachabilityWorker from the pruning operation and instead schedule a custom job that will prune the table for us once a day. The ReachabilityPruner cron task will clean up the history of the ReachabilityWorker jobs older than 6 days.
2025-06-27 17:00:02 -07:00
..
activity/ir Tests: Remove async from cases that use Mock 2023-12-10 17:10:18 +04:00
chat Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
config Fix test "transforms config to tuples" 2023-12-29 22:50:26 -05:00
conversation Fix some more typos 2023-12-28 00:17:04 +01:00
docs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
ecto_type/activity_pub/object_validators Fix good_locale_code?/1 regex 2024-07-28 13:44:17 +02:00
emails Revert "Tests: fix more tests" 2023-12-12 19:35:08 +04:00
emoji File.mkdir_p -> Pleroma.Backports.mkdir_p 2025-06-16 12:48:47 +02:00
gun Gun Connection Pool: successfully retry after reclaiming the pool 2024-06-20 14:03:22 -04:00
http Switch formatting checks to Elixir 1.15 2024-06-12 15:18:47 -04:00
instances Merge remote-tracking branch 'origin/develop' into improved-reachability 2025-06-27 15:59:46 -07:00
integration Revert "Remove invalid test" 2024-08-04 13:59:13 -04:00
language Merge remote-tracking branch 'origin/develop' into translate-posts 2025-03-19 17:59:24 +01:00
mfa Implement a custom uri_equal?/2 to fix comparisons of URLs with unordered query parameters 2023-12-29 22:50:26 -05:00
migration_helper Fix order of args for favorite/2 2024-07-22 18:25:37 -04:00
object Reachability refactor 2025-06-06 12:32:09 -07:00
password Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
repo/migrations AutolinkerToLinkifyTest: Asyncify 2025-02-25 17:36:05 +04:00
search QdrantSearch: Add health checks. 2024-05-27 14:21:55 +04:00
upload Linting 2025-03-11 18:21:27 +04:00
uploaders IPFS uploader: dialyzer fixes 2024-05-30 15:14:27 -04:00
user Link to exported outbox/followers/following collections in backup actor.json 2025-01-09 12:58:51 +01:00
web Merge remote-tracking branch 'origin/develop' into improved-reachability 2025-06-27 15:59:46 -07:00
workers Refactor ReachabilityWorker to use a 5-phase reachability testing approach 2025-06-27 17:00:02 -07:00
activity_test.exs Fix order of args for favorite/2 2024-07-22 18:25:37 -04:00
announcement_read_relationship_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
announcement_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
application_requirements_test.exs Revert "Tests: fix more tests" 2023-12-12 19:35:08 +04:00
bookmark_folder_test.exs Allow to group bookmarks in folders 2024-03-01 11:04:01 +01:00
bookmark_test.exs Allow to group bookmarks in folders 2024-03-01 11:04:01 +01:00
captcha_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
chat_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
config_db_test.exs Switch formatting checks to Elixir 1.15 2024-06-12 15:18:47 -04:00
config_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
conversation_test.exs Tests: Use StaticConfig when possible. 2025-02-23 17:52:17 +04:00
emoji_test.exs Credo.Check.Readability.PredicateFunctionNames 2024-01-26 16:59:58 -05:00
filter_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
following_relationship_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
formatter_test.exs Fix some more typos 2023-12-28 00:17:04 +01:00
frontend_test.exs File.mkdir_p -> Pleroma.Backports.mkdir_p 2025-06-16 12:48:47 +02:00
hashtag_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
healthcheck_test.exs Fix tests by leveraging Keyword.equal?/2 2023-12-29 22:50:26 -05:00
html_test.exs Add tests for Mastodon mention hashtag class 2024-09-06 11:51:16 -04:00
http_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
instances_test.exs Reachability refactor 2025-06-06 12:32:09 -07:00
job_queue_monitor_test.exs Switch formatting checks to Elixir 1.15 2024-06-12 15:18:47 -04:00
keys_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
list_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
maps_test.exs Maps: Add filter_empty_values/1 2024-01-26 16:18:29 +01:00
marker_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
mfa_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
moderation_log_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
notification_test.exs Tests: Use StaticConfig when possible. 2025-02-23 17:52:17 +04:00
object_test.exs File.mkdir_p -> Pleroma.Backports.mkdir_p 2025-06-16 12:48:47 +02:00
pagination_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
registration_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
release_task_test.exs Linting 2024-11-21 16:32:05 +04:00
repo_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
report_note_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
resilience_test.exs Fix order of args for favorite/2 2024-07-22 18:25:37 -04:00
reverse_proxy_test.exs ReverseProxy: Sanitize content. 2025-03-11 14:18:36 +04:00
rule_test.exs Add tests 2022-05-16 14:06:53 +02:00
runtime_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
safe_jsonb_set_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
safe_zip_test.exs File.mkdir_p -> Pleroma.Backports.mkdir_p 2025-06-16 12:48:47 +02:00
scheduled_activity_test.exs Fix Oban related tests 2024-05-27 13:48:24 -04:00
schema_test.exs Test for missing FK indexes 2024-05-30 10:49:45 -04:00
signature_test.exs Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into pleroma-secure-mode 2024-05-28 12:31:12 +04:00
stats_test.exs Fix order of args for follow/2 2024-07-22 19:07:55 -04:00
upload_test.exs Pleroma.Upload.Filter.Dedupe: sharding directory structure 2024-10-29 16:00:18 -04:00
user_invite_token_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
user_relationship_test.exs UserRelationshipTest: Don't use Mock. 2025-02-23 17:51:25 +04:00
user_search_test.exs Fix warnings in tests, treat warnings as errors in CI. 2023-01-03 14:59:14 -05:00
user_test.exs Relax alsoKnownAs requirements to just being a URI 2025-06-11 23:24:18 +03:00
utils_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00
xml_builder_test.exs Revert "Merge branch 'copyright-bump' into 'develop'" 2023-01-02 20:38:50 +00:00