diff options
author | devonh <devon.dmytro@gmail.com> | 2022-10-19 10:03:16 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-19 11:03:16 +0100 |
commit | 241d5c47dfa9e5cfadc350f688aab30f9e539fbb (patch) | |
tree | c20483f5cb8a97fb61f56188240cb00a1e202fdc /go.mod | |
parent | 3aa92efaa3e814ad0596fc5fc174a2e43124dcf5 (diff) |
Refactor Federation Destination Queues (#2807)
This is a refactor of the federation destination queues.
It fixes a few things, namely:
- actually retry outgoing events with backoff behaviour
- obtain enough events from the database to fill messages as much as
possible
- minimize the amount of running goroutines
- use pure timers for backoff
- don't restart queue unless necessary
- close the background task when backing off
- increase max edus in a transaction to match the spec
- cleanup timers more aggresively to reduce memory usage
- add jitter to backoff timers to reduce resource spikes
- add a bunch of tests (with real and fake databases) to ensure
everything is working
Diffstat (limited to 'go.mod')
-rw-r--r-- | go.mod | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -50,6 +50,7 @@ require ( golang.org/x/term v0.0.0-20220919170432-7a66f970e087 gopkg.in/h2non/bimg.v1 v1.1.9 gopkg.in/yaml.v2 v2.4.0 + gotest.tools/v3 v3.4.0 nhooyr.io/websocket v1.8.7 ) @@ -127,7 +128,6 @@ require ( gopkg.in/macaroon.v2 v2.1.0 // indirect gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - gotest.tools/v3 v3.4.0 // indirect ) go 1.18 |