-
-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Excessive calls to GET /relations
and GET /event
, with MSC3981 enabled and working
#25395
Comments
This can cause |
I've just turned on MSC3981 support, and while it's reduced a lot of the |
I spoke too soon: it's now spamming |
The implementation of MSC 3981 in element-web was actually slightly faulty, as it still did the old-style /relations requests (though ignored the results). This should be fixed now. |
|
@turt2live I assume your server supports MSC3981? Element Web won't use it unless the server advertises support for it. |
Yes, enabling MSC3981 support stopped the |
These two statements seem to be in conflict. Which is correct? In any case, I experienced much the same (cf #25705), and it doesn't seem to be making a |
I think this is mis-triaged. It's basically a show-stopping DoS which happens every time you reload the app. |
The |
Even if we have to compensate for lack of a server-side feature, can we do so in a way that doesn't require requesting the same event hundreds of times? |
matrix-org/matrix-js-sdk#3530 was a dropped attempt at resolving this |
@t3chguy you said in chat earlier that you don't think this stems from matrix-org/matrix-js-sdk#3427. I didn't fully understand what you meant by the following though:
Could you expand on that? |
@Johennes when constructing a Thread object, we use |
@t3chguy and I discussed some more in DM. The O- and S- levels put this below what the WAT would pick up as a fire currently. However, there is uncertainty about whether or not this is a recent regression. @t3chguy will try to do a time-boxed investigation into this tomorrow to help inform further decisions. |
tbh, if the fix were a promise cache on |
* Drop support for Node 16 ([\matrix-org#3533](matrix-org#3533)). * Improve types around login, registration, UIA and identity servers ([\matrix-org#3537](matrix-org#3537)). * **The Browserify artifact is being deprecated, scheduled for removal in the October 10th release cycle. (matrix-org#3189)** * Simplify `MatrixClient::setPowerLevel` API ([\matrix-org#3570](matrix-org#3570)). Fixes element-hq/element-web#13900 and matrix-org#1844. * Deprecate `VerificationRequest.getQRCodeBytes` and replace it with the asynchronous `generateQRCode`. ([\matrix-org#3562](matrix-org#3562)). * Deprecate `VerificationRequest.beginKeyVerification()` in favour of `VerificationRequest.startVerification()`. ([\matrix-org#3528](matrix-org#3528)). * Deprecate `Crypto.VerificationRequest` application event, replacing it with `Crypto.VerificationRequestReceived`. ([\matrix-org#3514](matrix-org#3514)). * Throw saner error when peeking has its room pulled out from under it ([\matrix-org#3577](matrix-org#3577)). Fixes element-hq/element-web#18679. * OIDC: Log in ([\matrix-org#3554](matrix-org#3554)). Contributed by @kerryarchibald. * Prevent threads code from making identical simultaneous API hits ([\matrix-org#3541](matrix-org#3541)). Fixes element-hq/element-web#25395. * Update IUnsigned type to be extensible ([\matrix-org#3547](matrix-org#3547)). * add stop() api to BackupManager for clean shutdown ([\matrix-org#3553](matrix-org#3553)). * Log the message ID of any undecryptable to-device messages ([\matrix-org#3543](matrix-org#3543)). * Ignore thread relations on state events for consistency with edits ([\matrix-org#3540](matrix-org#3540)). * OIDC: validate id token ([\matrix-org#3531](matrix-org#3531)). Contributed by @kerryarchibald. * Fix read receipt sending behaviour around thread roots ([\matrix-org#3600](matrix-org#3600)). * Fix `TypedEventEmitter::removeAllListeners(void)` not working ([\matrix-org#3561](matrix-org#3561)). * Don't allow Olm unwedging rate-limiting to race ([\matrix-org#3549](matrix-org#3549)). Fixes element-hq/element-web#25716. * Fix an instance of failed to decrypt error when an in flight `/keys/query` fails. ([\matrix-org#3486](matrix-org#3486)). * Use the right anchor emoji for SAS verification ([\matrix-org#3534](matrix-org#3534)). * fix a bug which caused the wrong emoji to be shown during SAS device verification. ([\matrix-org#3523](matrix-org#3523)).
Steps to reproduce
Outcome
What did you expect?
For the app to start up quickly, quietly (this bug causes my CPU fans to be fast-moving), and without duplicating requests.
What happened instead?
There's tens of thousands of requests, so haven't identified a pattern yet. A few example URLs are:
https://t2l.io/_matrix/client/v1/rooms/!REDACTED:matrix.org/relations/$REDACTED/m.replace/m.room.encrypted?limit=1
https://t2l.io/_matrix/client/v1/rooms/!REDACTED:element.io/relations/$REDACTED/m.replace/m.room.encrypted?limit=1
https://t2l.io/_matrix/client/r0/rooms/!REDACTED:element.io/event/$REDACTED
Specifically on the
GET /event
calls, many appear to be duplicated:I was told ages ago that MSC3981 would fix this, but it hasn't (or the scope of the MSC changed between 6 months ago and now).
Operating system
Windows 11
Application version
Element Nightly version: 0.0.1-nightly.2023051701 Olm version: 3.2.14
How did you install the app?
The Internet
Homeserver
t2l.io
Will you send logs?
Yes
The text was updated successfully, but these errors were encountered: