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

m.room_key_request responses are prioritised above regular m.room_key messages #24681

Closed
richvdh opened this issue Feb 27, 2023 · 2 comments · Fixed by matrix-org/matrix-js-sdk#2982
Labels
A-E2EE A-Performance O-Occasional Affects or can be seen by some users regularly or most users rarely S-Minor Impairs non-critical functionality or suitable workarounds exist T-Defect

Comments

@richvdh
Copy link
Member

richvdh commented Feb 27, 2023

If an m.room_key_request arrives while we are still sending out the original m.room_key messages, then we prioritise its response above m.room_key messages and send it out in its own /sendToDevice request. (Regular m.room_key messages go via a queue in the CryptoStore; responses to m.room_key_request are not queued in this way.)

This ends up delaying transmission of room keys for everyone who hasn't yet barged to the front of the queue with an m.room_key_request, exacerbating the problem.

See also #24680.

@richvdh
Copy link
Member Author

richvdh commented Feb 27, 2023

this is particularly ironic given the recipient won't even accept the responses (#23766)

@richvdh
Copy link
Member Author

richvdh commented Feb 27, 2023

Likely this will become a non-issue once we fix #23766.

@robintown robintown added A-E2EE T-Defect A-Performance S-Minor Impairs non-critical functionality or suitable workarounds exist O-Occasional Affects or can be seen by some users regularly or most users rarely labels Mar 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-E2EE A-Performance O-Occasional Affects or can be seen by some users regularly or most users rarely S-Minor Impairs non-critical functionality or suitable workarounds exist T-Defect
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants