-
Notifications
You must be signed in to change notification settings - Fork 167
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reset federation retry timer after receiving a message from the (formerly) offline homeserver #17769
Comments
I was under the impression that the backoff behaviour is exactly that, it gets reset to 0 as soon as event from MIA is received. Do you have any evidence that that's not the case ? |
Yes. Quite literally the example I gave was my observation using 1.115.0. I manage two homeservers, took one down, and accidentally sent a test message to it before bringing it back up. As an add-on to this problem, the encryption keys for some messages were never federated between the clients, leading to apparently permanently undecryptable messages on one of the clients. That said, I have only tested this with E2E encryption. Could that cause this to happen? Can you point to the line that re-sends outstanding requests? |
I can't seem to reproduce this on 1.116. Maybe something changed since 1.115? I'll reopen this if I can get a reproducer. Thanks for bearing with me. |
Description:
If homeserver
A
goes down, and a user from homeserverB
tries to contact someone onA
,B
will (correctly) notice thatA
is offline. IfA
comes back online,B
(as far as I can tell) will wait until its retry timer expires before attempting to contactA
again.However, if a user on
A
sends a message to a user onB
,B
becomes aware thatA
is online again. At this point, it makes sense forB
to start retrying sending messages toA
.This would significantly improve the user experience. Until these retry timers expire, users on
B
will be able to send message to users onA
, but not vice-versa.The text was updated successfully, but these errors were encountered: