Server-side aggregation of m.replace relationships #845
Labels
No labels
Bug
Cherry-picking
Database
Dependencies
Dependencies/Renovate
Difficulty
Easy
Difficulty
Hard
Difficulty
Medium
Documentation
Enhancement
Good first issue
Help wanted
Inherited
Matrix/Administration
Matrix/Appservices
Matrix/Auth
Matrix/Client
Matrix/Core
Matrix/Federation
Matrix/MSC
Matrix/Media
Meta
Meta/Packaging
Priority
Blocking
Priority
High
Priority
Low
Security
Status
Confirmed
Status
Duplicate
Status
Invalid
Status
Needs Investigation
To-Merge
Wont fix
old/ci/cd
old/rust
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: continuwuation/continuwuity#845
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
https://spec.matrix.org/v1.14/client-server-api/#server-side-aggregation-of-mreplace-relationships
Doesn't seem to be happening in my testing. May require additional database index for a performant lookup. Not sure what to do about historic events in that case - running index creation would be expensive, can add an admin command and a one-time-use flag.
This looks like a similar codepath:
.get("m.relations")
Perhaps it should be generic?
Compare synapse to continuwuity:
Two plans for implementing this:
Add a other function like the thread one that inserts in the database. Disadvantages is that it grows the database, doesn't work for historic events and might get funky with switching impls.
Use
tofrom_relation: Arc<Map>,
which is used for the relations endpoint. May slow down timeline slightly as it's not indexed by type or order, and we'd have to iterate through, filter and find the 'max' event every time we get the PDU ready for the client. However, will work for historic events as long as that doesn't have any bugs.
Probs the second one is best.
I think fixing this will fix room list message previews in EX, not 100% sure on that though.