- Oct 16, 2020
-
-
Jonathan de Jong authored
Signed-off-by:
Jonathan de Jong <jonathan@automatia.nl>
-
Richard van der Hoff authored
rather than have everything that instantiates an LruCache manage metrics separately, have LruCache do it itself.
-
Richard van der Hoff authored
EventBuilder.build wants auth events these days
-
- Oct 15, 2020
-
-
Richard van der Hoff authored
Support modifying event content from ThirdPartyRules modules
-
Jonathan de Jong authored
This implements a more standard API for instantiating a homeserver and moves some of the dependency injection into the test suite. More concretely this stops using `setattr` on all `kwargs` passed to `HomeServer`.
-
Will Hunt authored
Optionally sends typing, presence, and read receipt information to appservices.
-
Andrew Morgan authored
This PR makes several changes to the `./scripts-dev/lint.sh` script, which lints the codebase with a number of tools: * Adds usage information, with `-h` flag to show it. Otherwise it will show when providing an unknown flag. * Adds option `-d` which will check both staged and unstaged files that have changed since the last commit and add them to the list of files to lint. - Note that only files without an extension, or with a `.py` extension will be allowed. This prevents editing bash scripts causing the linters to break on non-python files. * Improves the print-out of which files/directories are being linted.
-
Patrick Cloke authored
-
Patrick Cloke authored
-
Patrick Cloke authored
-
Patrick Cloke authored
-
Patrick Cloke authored
-
Patrick Cloke authored
-
Erik Johnston authored
We asserted that the IDs returned by postgres sequence was greater than any we had seen, however this is technically racey as we may update the current positions out of order. We now assert that the sequences are correct on startup, so the assertion is no longer really required, so we remove them.
-
Richard van der Hoff authored
This seemed to entail dragging in a type stub for SortedList.
-
Richard van der Hoff authored
Rename Cache to DeferredCache, and related changes
-
Neil Johnson authored
Include user agent in user daily visits table.
-
Richard van der Hoff authored
Simplify `_locally_reject_invite`
-
- Oct 14, 2020
-
-
Richard van der Hoff authored
-
Richard van der Hoff authored
-
Richard van der Hoff authored
-
Richard van der Hoff authored
-
Richard van der Hoff authored
-
Erik Johnston authored
Autocommit means that we don't wrap the functions in transactions, and instead get executed directly. Introduced in #8456. This will help: 1. reduce the number of `could not serialize access due to concurrent delete` errors that we see (though there are a few functions that often cause serialization errors that we don't fix here); 2. improve the DB performance, as it no longer needs to deal with the overhead of `REPEATABLE READ` isolation levels; and 3. improve wall clock speed of these functions, as we no longer need to send `BEGIN` and `COMMIT` to the DB. Some notes about the differences between autocommit mode and our default `REPEATABLE READ` transactions: 1. Currently `autocommit` only applies when using PostgreSQL, and is ignored when using SQLite (due to silliness with [Twisted DB classes](https://twistedmatrix.com/trac/ticket/9998)). 2. Autocommit functions may get retried on error, which means they can get applied *twice* (or more) to the DB (since they are not in a transaction the previous call would not get rolled back). This means that the functions need to be idempotent (or otherwise not care about being called multiple times). Read queries, simple deletes, and updates/upserts that replace rows (rather than generating new values from existing rows) are all idempotent. 3. Autocommit functions no longer get executed in [`REPEATABLE READ`](https://www.postgresql.org/docs/current/transaction-iso.html) isolation level, and so data can change queries, which is fine for single statement queries.
-
Erik Johnston authored
We asserted that the IDs returned by postgres sequence was greater than any we had seen, however this is technically racey as we may update the current positions out of order. We now assert that the sequences are correct on startup, so the assertion is no longer really required, so we remove them.
-
Christopher May-Townsend authored
Signed-off-by:
Christopher May-Townsend <chris@maytownsend.co.uk>
-
Brendan Abolivier authored
* Update documentation on retention policies limits Document the changes from https://github.com/matrix-org/synapse/pull/8104
-
Erik Johnston authored
These are tests for #8439
-
Erik Johnston authored
* Fix outbound federaion with multiple event persisters. We incorrectly notified federation senders that the minimum persisted stream position had advanced when we got an `RDATA` from an event persister. Notifying of federation senders already correctly happens in the notifier, so we just delete the offending line. * Change some interfaces to use RoomStreamToken. By enforcing use of `RoomStreamTokens` we make it less likely that people pass in random ints that they got from somewhere random.
-
Brendan Abolivier authored
* Make sure a retention policy is a state event * Changelog
-
Aaron authored
Fixes #8029
-
- Oct 13, 2020
-
-
Richard van der Hoff authored
-
Richard van der Hoff authored
Update `EventCreationHandler.create_event` to accept an auth_events param, and use it in `_locally_reject_invite` instead of reinventing the wheel.
-
Richard van der Hoff authored
-
Richard van der Hoff authored
-
Richard van der Hoff authored
Support returning a new event dict from `check_event_allowed`.
-
Richard van der Hoff authored
this is always the same as requester.access_token_id.
-
Richard van der Hoff authored
Rather than waiting until we handle the event, call the ThirdPartyRules check when we fist create the event.
-
Richard van der Hoff authored
There's not much point in calling these *after* we have decided to accept them into the DAG.
-