Fetch events from multiple homeservers #5
Labels
A-archive-room-view
The view to look at a room day by day in the archive
A-backend
Related to the backend Node.js server pieces
T-Enhancement
New feature or request
Milestone
Problem
When using the MSC2716
/batch_send
endpoint, it creates events all at the samedepth
and are only correctly sorted between because of thestream_ordering
. This works great for the local homeserver as they are all in the correct order but can get sticky when federating to other homeservers becausestream_ordering
is just a local number and not federated likedepth
. If other homeservers always backfilled in order from newest -> oldest like scrollbar in a room, everything would be fine. But...This is especially important for the
gitter.im
homeserver because we will use MSC2716 to backfill the entire message history from Gitter to Matrix as part of the sunset plan. We want the messages to be in the correct order and available correctly in the archive. Pulling directly from thegitter.im
homeserver will allow us to bide our time until we get to solving graph linearization the correct way via online topological ordering.Potential solutions
Instead of pulling from a single
config.matrixServerUrl
withconfig.matrixAccessToken
, we can have a map from homeserver to access token and if a given room alias matches a homeserver we have the access token for, we can pull from it directly. This saves time from not having to join over federation in those cases but also very important for the MSC2716 problem described above.The text was updated successfully, but these errors were encountered: