matrix-org / matrix-org/matrix-spec

Allow appservices to specify a reccomended maximum TTL time of a transaction

Open
#713 1 comment 0 reactions 0 assignees View on GitHub
improvement
Dominant language
HTML
Stars
330
Forks
150
Avg merge
2h 21m
Merged PRs (30d)
3

Description

Many bridges filter events from transactions based upon the `origin_server_ts`. If the age of an event is over a certain amount of time (e.g. 5 minutes), it is immediately discarded. This can be a problem if an appservice is down for an extended period of time, and when the appservice comes back up, it starts being sent many transactions that it will immediately discard.

Furthermore, there is an expense on the homeserver side where the homeserver may be storing a number of transactions for bridges in it's database. Being able to prune old transactions would save a great deal of space over time.

This needs a MSC

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the Matrix appservice transaction behavior described in the issue and the existing specification structure. Draft an MSC that defines a recommended maximum transaction TTL, including how it relates to bridge event filtering and homeserver transaction pruning; done means the proposal is sufficiently specified for review.

Written by the indexing model from the issue text.

Assessment

Domain
backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.