-
Notifications
You must be signed in to change notification settings - Fork 288
MSC4140 delayed event rate limit failures are not handled #18021
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
Comments
#18018 contains a proposed fix. However, the approach in that PR is to simply disable that rate limit. If that PR is accepted then the should be some follow-up on this issue here to get the original security consideration mitigated. For example, one of:
|
@hughns @AndrewFerr I agree that adding handling for exceptions raised by the ratelimiting code and then attempting to send the event with the delay suggested by the rate-limiter makes sense. My only worry is that you could end up with a very large "backlog" of events, which is completely invisible to the client. I'm not sure if this would hurt the UX of any use cases you're aware of? |
Is #18019 fixing this issue? And more specifically is it also tackling
|
No, that one is just putting a rate limit on restarting/canceling/listing delayed events. |
As per https://github.com/matrix-org/matrix-spec-proposals/blob/toger5/expiring-events-keep-alive/proposals/4140-delayed-events-futures.md#rate-limiting-at-the-point-of-sending we are applying rate limiting at the point of the delayed event being entered into the DAG.
However, we don't handle this temporary failure and retry.
This means that the delayed event then gets dropped.
This was observed in the wild yesterday.
The text was updated successfully, but these errors were encountered: