-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Join endpoints are rate-limited even if the user has already joined the room #8146
Comments
Thanks for your report! As I understanding, your issue isn't so much that the |
If the ratelimiter ignoring the override table (which is currently only used by the message ratelimiter and not the others) is also an issue for you, could you please open a separate issue on this repo? |
Reading the PR, this sounds right to me -- the issue is I'm getting a ratelimit error on rooms the account is already a member of. |
#8153 has been merged into the release branch, so I'm closing this issue. |
FYI the fix to this issue has just been released in Synapse v1.19.1 🙂 |
Description
In the Drupal integration, before sending a message into a room, the API first sends a join to make sure the account is present. Since 1.19.0, this is now resulting in a lot of M_LIMIT_EXCEEDED errors, and interrupting the rest of the processing if not caught/otherwise handled. My assumption is that this end point is idempotent, and by calling it before sending, I'm potentially saving a round trip of having to hit an endpoint to see if the account is already joined, and then again to join if it's not.
In #matrix-dev:matrix.org, @tulir pointed me to #8138 , so I updated the Docker image from the github develop.zip after that PR was merged (I think), but I'm still getting errors.
I think that #8008 is what caused this, and #8138 did not fix the ratelimit_overide user accounts. Needs an additional fix for this table?
Version information
If not matrix.org:
1.19.0:
Install method:
Docker image built from release tarball.
Debian stretch container.
The text was updated successfully, but these errors were encountered: