Skip to content
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

[SDK] Key querying is not chunked and servers might not support an arbitrary amount of users in the request. #4123

Closed
manuroe opened this issue Mar 15, 2021 · 0 comments · Fixed by matrix-org/matrix-ios-sdk#1051
Assignees
Labels

Comments

@manuroe
Copy link
Member

manuroe commented Mar 15, 2021

From element-android created by poljar: element-hq/element-android#2925

Describe the bug
During my testing using Complement with this PR matrix-org/complement#75, I hit a bug when element would need to send out a /keys/query request. Complement creates an server with N E2EE capable users that are joined into a single room.

When I increased the number of users to 1000, synapse failed to return a response for the initial /keys/query request which contains all 1000 users.

To Reproduce
Steps to reproduce the behavior:

  1. Freshly log in to an account that shares an E2EE room with 1000 users.
  2. Try to send a message in the room.
  3. Observe the 500 /keys/query response in the network tab.

This completely wedges the E2EE support and the message can't ever be sent.

I'm not sure if this is a specific limitation of the Synapse install Complement was running but it seems a good idea to chunk /keys/query requests anyways. It seems that chunking the requests out at 200 or 500 users (or anything between that) would work.

Note that this is the same problem as matrix-org/matrix-js-sdk#1619

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
1 participant