synapse/changelog.d
Richard van der Hoff 7078866969
Put a cache on `/state_ids` (#7931)
If we send out an event which refers to `prev_events` which other servers in
the federation are missing, then (after a round or two of backfill attempts),
they will end up asking us for `/state_ids` at a particular point in the DAG.

As per https://github.com/matrix-org/synapse/issues/7893, this is quite
expensive, and we tend to see lots of very similar requests around the same
time.

We can therefore handle this much more efficiently by using a cache, which (a)
ensures that if we see the same request from multiple servers (or even the same
server, multiple times), then they share the result, and (b) any other servers
that miss the initial excitement can also benefit from the work.

[It's interesting to note that `/state` has a cache for exactly this
reason. `/state` is now essentially unused and replaced with `/state_ids`, but
evidently when we replaced it we forgot to add a cache to the new endpoint.]
2020-07-23 18:38:19 +01:00
..
.gitignore Correct attrs package name in requirements (#3492) 2018-07-07 10:46:59 +10:00
6455.feature Include room states on invite events sent to ASes (#6455) 2020-07-10 18:44:56 +01:00
7613.feature Add delete room admin endpoint (#7613) 2020-07-14 12:36:23 +01:00
7798.feature
7802.misc Do not use canonicaljson to magically handle decoding bytes from JSON. (#7802) 2020-07-10 14:30:08 -04:00
7813.misc Add types to the server code and remove unused parameter (#7813) 2020-07-10 14:28:42 -04:00
7815.bugfix
7817.bugfix
7820.misc Improve the type hints of synapse.api.errors. (#7820) 2020-07-14 07:03:58 -04:00
7822.bugfix Fix handling of "off" in encryption_enabled_by_default_for_room_type (#7822) 2020-07-13 17:14:42 +01:00
7827.feature Add the option to validate the `iss` and `aud` claims for JWT logins. (#7827) 2020-07-14 07:16:43 -04:00
7829.bugfix Correctly pass app_name to all email templates. (#7829) 2020-07-14 10:00:53 +01:00
7830.feature Support handling registration requests across multiple client readers. (#7830) 2020-07-13 13:31:46 -04:00
7836.misc Ensure that calls to `json.dumps` are compatible with the standard library json. (#7836) 2020-07-15 13:40:54 -04:00
7839.docker Switch to Debian:Slim from Alpine for the docker image (#7839) 2020-07-17 17:40:53 +01:00
7842.feature Add admin endpoint to get members in a room. (#7842) 2020-07-16 16:43:23 -04:00
7844.bugfix Return the proper 403 Forbidden error during errors with JWT logins. (#7844) 2020-07-15 07:10:21 -04:00
7846.feature Allow email subjects to be customised through Synapse's configuration (#7846) 2020-07-14 19:10:42 +01:00
7847.feature Allow accounts to be re-activated from the admin APIs. (#7847) 2020-07-15 11:00:21 -04:00
7848.misc remove `retry_on_integrity_error` wrapper for persist_events (#7848) 2020-07-15 10:34:53 +01:00
7849.misc Consistently use `db_to_json` to convert from database values to JSON objects. (#7849) 2020-07-16 11:32:19 -04:00
7850.bugfix Fix bug in per-room message retention policies. (#7850) 2020-07-14 15:51:13 -04:00
7851.misc Convert E2E key and room key handlers to async/await. (#7851) 2020-07-15 08:48:58 -04:00
7853.misc Fix client reader sharding tests (#7853) 2020-07-15 15:27:35 +01:00
7854.bugfix Avoid brand new rooms in `delete_old_current_state_events` (#7854) 2020-07-15 18:33:03 +01:00
7855.feature Add ability to run multiple pusher instances (#7855) 2020-07-16 14:06:28 +01:00
7856.misc Newsfile 2020-07-15 15:45:19 +01:00
7858.misc Add a default limit (of 100) to get/sync operations. (#7858) 2020-07-17 07:59:23 -04:00
7859.bugfix Reject attempts to join empty rooms over federation (#7859) 2020-07-16 15:17:31 +01:00
7860.misc Convert _base, profile, and _receipts handlers to async/await (#7860) 2020-07-17 07:08:30 -04:00
7861.misc Optimise queueing of inbound replication commands (#7861) 2020-07-16 15:49:37 +01:00
7866.bugfix changelog 2020-07-16 13:01:11 +01:00
7868.misc Convert synapse.app to async/await. (#7868) 2020-07-17 07:08:56 -04:00
7869.feature Allow moving typing off master (#7869) 2020-07-16 15:12:54 +01:00
7870.misc Add some tiny type annotations (#7870) 2020-07-16 13:52:29 +01:00
7871.misc Convert device handler to async/await (#7871) 2020-07-17 07:09:25 -04:00
7872.bugfix Fix the trace function for async functions. (#7872) 2020-07-17 13:32:01 -04:00
7874.misc Convert the federation agent and related code to async/await. (#7874) 2020-07-23 07:05:57 -04:00
7877.misc Clean up PreserveLoggingContext (#7877) 2020-07-22 00:40:27 +01:00
7878.removal Remove an unused prometheus metric (#7878) 2020-07-22 00:40:55 +01:00
7879.feature Track command processing as a background process (#7879) 2020-07-22 00:40:42 +01:00
7880.bugfix Fix TypeError in synapse.notifier (#7880) 2020-07-17 14:11:05 +01:00
7881.misc Change "unknown room ver" logging to warning. (#7881) 2020-07-17 12:10:43 +01:00
7882.misc Stop using 'device_max_stream_id' (#7882) 2020-07-17 17:03:27 +01:00
7884.misc Convert the message handler to async/await. (#7884) 2020-07-22 12:29:15 -04:00
7885.doc Add help for creating a user via docker (#7885) 2020-07-17 13:25:48 -04:00
7888.misc Remove Ubuntu Eoan that is now EOL (#7888) 2020-07-17 15:38:41 -04:00
7889.doc Change sample config's postgres user to synapse_user (#7889) 2020-07-20 18:29:25 +01:00
7890.misc Fix a typo in the sample config. (#7890) 2020-07-20 13:42:52 -04:00
7892.misc Fix deprecation warning: import ABC from collections.abc (#7892) 2020-07-20 13:33:04 -04:00
7895.bugfix Fix deprecation warning due to invalid escape sequences (#7895) 2020-07-20 16:45:51 +01:00
7897.misc Remove unused code from synapse.logging.utils. (#7897) 2020-07-20 15:20:53 -04:00
7908.feature Follow-up to admin API to re-activate accounts (#7908) 2020-07-22 12:33:19 -04:00
7912.misc Convert room list handler to async/await. (#7912) 2020-07-21 07:51:48 -04:00
7914.misc Lint the contrib/ directory in CI and linting scripts, add synctl to linting script (#7914) 2020-07-20 21:43:49 +01:00
7919.misc Element CSS and logo in email templates (#7919) 2020-07-21 11:58:01 +01:00
7927.misc Skip serializing /sync response if client has disconnected (#7927) 2020-07-22 13:44:16 +01:00
7929.misc Add debugging to sync response generation (#7929) 2020-07-22 13:43:10 +01:00
7930.feature Abort federation requests if the client disconnects early (#7930) 2020-07-23 16:52:33 +01:00
7931.feature Put a cache on `/state_ids` (#7931) 2020-07-23 18:38:19 +01:00
7933.doc Reorder database docs to promote postgresql. (#7933) 2020-07-23 07:48:49 -04:00
7934.doc Update the dates for ACME v1 EOL 2020-07-22 16:18:40 +01:00