summary refs log tree commit diff
path: root/synapse/util (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-05-04Fix MANIFEST.inBrendan Abolivier2-3/+5
An update of check-manifest shone some light on some issues with MANIFEST.in, specifically that we didn't ignore/prune the contrib directory, and that we were using prune instead of exclude for files. This fixes both issues. Fixes #7403
2020-05-04Fix redis password support. (#7401)Erik Johnston3-0/+7
We forgot to set the password on the subscriber connection, as well as not calling super methods for overridden connectionMade/connectionLost functions.
2020-05-01Convert synapse.server_notices to async/await. (#7394)Patrick Cloke3-11/+8
2020-05-01Convert the synapse.notifier module to async/await. (#7395)Patrick Cloke2-10/+8
2020-05-01Wait for current_state_events_membership before populate_stats_process_rooms ↵Richard van der Hoff3-1/+37
(#7387) populate_stats_process_rooms was added in #5971 / v1.4.0; current_state_events_membership was added in #5706 / v1.3.0. Fixes #7380.
2020-05-01Thread through instance name to replication client. (#7369)Erik Johnston12-41/+101
For in memory streams when fetching updates on workers we need to query the source of the stream, which currently is hard coded to be master. This PR threads through the source instance we received via `POSITION` through to the update function in each stream, which can then be passed to the replication client for in memory streams.
2020-05-01Use `stream.current_token()` and remove `stream_positions()` (#7172)Erik Johnston19-154/+30
We move the processing of typing and federation replication traffic into their handlers so that `Stream.current_token()` points to a valid token. This allows us to remove `get_streams_to_replicate()` and `stream_positions()`.
2020-05-01async/await is_server_admin (#7363)Andrew Morgan22-438/+410
2020-05-01Further improvements to requesting the public rooms list on a homeserver ↵Andrew Morgan3-23/+71
which has it set to private (#7368)
2020-05-01Workaround for assertion errors from db_query_to_update_function (#7378)Richard van der Hoff2-2/+2
Hopefully this is no worse than what we have on master...
2020-04-30Persist user interactive authentication sessions (#7302)Patrick Cloke14-125/+434
By persisting the user interactive authentication sessions to the database, this fixes situations where a user hits different works throughout their auth session and also allows sessions to persist through restarts of Synapse.
2020-04-30Apply federation check for /publicRooms with filter list (#7367)Andrew Morgan2-1/+6
2020-04-29Add instance name to RDATA/POSITION commands (#7364)Erik Johnston10-50/+95
This is primarily for allowing us to send those commands from workers, but for now simply allows us to ignore echoed RDATA/POSITION commands that we sent (we get echoes of sent commands when using redis). Currently we log a WARNING on the master process every time we receive an echoed RDATA.
2020-04-29Don't relay REMOTE_SERVER_UP cmds to same conn. (#7352)Erik Johnston6-25/+114
For direct TCP connections we need the master to relay REMOTE_SERVER_UP commands to the other connections so that all instances get notified about it. The old implementation just relayed to all connections, assuming that sending back to the original sender of the command was safe. This is not true for redis, where commands sent get echoed back to the sender, which was causing master to effectively infinite loop sending and then re-receiving REMOTE_SERVER_UP commands that it sent. The fix is to ensure that we only relay to *other* connections and not to the connection we received the notification from. Fixes #7334.
2020-04-29Fix limit logic for EventsStream (#7358)Richard van der Hoff14-67/+658
* Factor out functions for injecting events into database I want to add some more flexibility to the tools for injecting events into the database, and I don't want to clutter up HomeserverTestCase with them, so let's factor them out to a new file. * Rework TestReplicationDataHandler This wasn't very easy to work with: the mock wrapping was largely superfluous, and it's useful to be able to inspect the received rows, and clear out the received list. * Fix AssertionErrors being thrown by EventsStream Part of the problem was that there was an off-by-one error in the assertion, but also the limit logic was too simple. Fix it all up and add some tests.
2020-04-29Fix fallback value for account_threepid_delegates.email (#7316)Andrew Morgan2-3/+9
2020-04-28Clean up admin api docs (#7361)Andrew Morgan2-18/+43
2020-04-28Return total number of users and profile attributes in admin users endpoint ↵Manuel Stahl6-36/+100
(#6881) Signed-off-by: Manuel Stahl <manuel.stahl@awesome-technologies.de>
2020-04-28Add some replication tests (#7278)Erik Johnston3-11/+299
Specifically some tests for the typing stream, which means we test streams that fetch missing updates via HTTP (rather than via the DB). We also shuffle things around a bit so that we create two separate `HomeServer` objects, rather than trying to insert a slaved store into places. Note: `test_typing.py` is heavily inspired by `test_receipts.py`
2020-04-28Fix typo 'datbases' in ConfigErrorAndrew Morgan1-1/+1
2020-04-28Fix collation for postgres for unit tests (#7359)Richard van der Hoff2-1/+5
When running the UTs against a postgres deatbase, we need to set the collation correctly.
2020-04-28Run replication streamers on workers (#7146)Erik Johnston3-22/+25
Currently we never write to streams from workers, but that will change soon
2020-04-27Fix incorrect metrics reporting for renew_attestations (#7344)Richard van der Hoff2-10/+10
We need to wait for the renewals to finish, so that the metrics are correctly reported.
2020-04-27Document monitoring workers (#7357)Brendan Abolivier2-0/+26
It doesn't seem to be documented anywhere and means that you suddenly start losing metrics without any obvious reason when you go from monolith to workers (e.g. #7312).
2020-04-27Add some explanation to application_services.md (#7091)lub2-0/+5
Signed-off-by: Simon Körner <git@lubiland.de>
2020-04-27Don't crash when one of the configuration files is empty (#7341)Brendan Abolivier2-0/+7
If the admin adds a `.yaml` file that's either empty or doesn't parse into a dict to a config directory (e.g. `conf.d` for debs installs), stuff like https://github.com/matrix-org/synapse/issues/7322 would happen. This PR checks that the file is correctly parsed into a dict, or ignores it with a warning if it parses into any other type (including `None` for empty files). Fixes https://github.com/matrix-org/synapse/issues/7322
2020-04-24Add documentation to the sample config about the templates for SSO. (#7343)</